Portál AbcLinuxu, 30. června 2025 16:54

Konqueror a otevreni externiho linku

18.7.2006 07:46 | Přečteno: 1056× | poslední úprava: 1.5.2007 23:35

Jelikoz me prestala bavit pomalost fluxbox+gtk desktopu, tak jsem se rozhodnul zkusit kde/qt only aplikace. Pri nastavovani konqueroru jsem samozrejme nastavil "open link in new tab instead of in new window" a "open as tab in existing konqueror, when URL is called externally". Jake bylo moje prekvapeni, kdyz jsem zjistil, ze to nefunguje. Po chvile googleni jsem vyzistil, ze to je chytrosti te funkce a funguje, jen kdyz je konqueror a volajici aplikaci na stejne plose, takove chovani se mi samozrejme nelibilo (komu by se taky libilo), vyresil jsem to nasledovne ...

How to make "open as tab in existing konqueror, when URL is called externally" working for all workspaces


#!/bin/bash
pwd_instead_of_homepage=1
konqi_argvs=$@
konqi_bin=`which -a konqueror|tail -n 1`
if [ ${konqi_bin} -ef $0 ];then
  echo "Set location of konqueror binary in konqi_bin in this script"
  exit
fi
dcop_bin=`which dcop`
if [ $? -ne 0 ];then
  echo "Can't find dcop in \$PATH"
  exit
fi

konqi_dcop=`${dcop_bin}|grep konqueror|tail -n 1`

if [ $# -gt 0 ]; then
  if [ -e "$1" ];then
    if [ ${1:0:1} = "/" ] ; then
      konqi_argvs="file://${konqi_argvs}"
    else
      konqi_argvs="file://$PWD/${konqi_argvs}"
    fi
  fi
else
  if [ ${pwd_instead_of_homepage} -eq 1 ]; then
    konqi_argvs="file://$PWD"
  else
    konqi_argvs=""
  fi
fi

if [ -z ${konqi_dcop} ]; then
  if [ -z ${konqi_argvs} ]; then
    ${konqi_bin}
  else
    ${konqi_bin} "${konqi_argvs}"
  fi
else
  if [[ "$1" =~ '^-' ]];then
    ${konqi_bin} "${konqi_argvs}"
  else
    window_id=`dcop ${konqi_dcop} default getWindows | tail -n 1`
    window_id=${window_id##*#}
    window_id=${window_id%%)*}
    dcop ${konqi_dcop} konqueror-mainwindow#$window_id newTab "${konqi_argvs}"
  fi
fi

       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (2) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

David Watzke avatar 18.7.2006 07:59 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Konqueror a otevreni externiho linku
Odpovědět | Sbalit | Link | Blokovat | Admin
Nemuselo by to úplně stopro fungovat když se zapne preloadování Konqueroru...

Jo a tohle
if [ ${pwd_instead_of_homepage} -eq 1 ]; then
  if [ $# -eq 0 ]; then
    konqi_argvs=`pwd`
  fi
fi
nahraď za
(( $pwd_instead_of_homepage == 1 && $# == 0 )) && konqi_argvs=$(pwd)
:-)
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
18.7.2006 09:29 lefti | skóre: 18 | blog: OneAndOnlyTrueBlog
Rozbalit Rozbalit vše Re: Konqueror a otevreni externiho linku
No, trochu jsem to predelal, ale ted uz to raci vystavovat nebudu vubec :) A nevis nahodou jak v konqueroru nastavit aby se pri zavreni tabu, pokud je jen jeden, nacetla homepage nebo about:blank? Taky by bylo hezky, kdybych zistil jak nastavit nezobrazovani "uchytek" toolbaru.
David Watzke avatar 18.7.2006 09:52 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Konqueror a otevreni externiho linku
To bohužel nevím...
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
David Watzke avatar 18.7.2006 09:52 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Konqueror a otevreni externiho linku
No, v Bashi by bylo ještě lepší místo $(pwd) použít $PWD, to už bych ale dal do uvozovek.
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
18.7.2006 13:35 Petr "Glubo" Sýkora | skóre: 21 | blog: Glubnik
Rozbalit Rozbalit vše Re: Konqueror a otevreni externiho linku
Odpovědět | Sbalit | Link | Blokovat | Admin
Díky, toto je řešení jednoho z problémů, které se mi nechtělo řešit a kvůli kterým jsem nezačal používat konqueror.
„O mrtvých jen v dobrém." „Pojďme se bavit o Stalinovi."
17.8.2006 17:26 Petr "Glubo" Sýkora | skóre: 21 | blog: Glubnik
Rozbalit Rozbalit vše Re: Konqueror a otevreni externiho linku
Odpovědět | Sbalit | Link | Blokovat | Admin
Tak jsem se jal testovat tento skriptík a narazil jsem na jeden problém. Pří situaci, kdy jsou otevřeny dvě okna s konquerorem a to historicky starší se zavře, přestane tento skript fungovat s chybovou hláškou.

Náprava je nahradit řádek
dcop ${konqi_dcop} konqueror-mainwindow#1 newTab ${konqi_argvs}
za
windowid=`dcop ${konqi_dcop} default getWindows |sed -e s/.*konqueror-mainwindow#\([1-90]*\))/\1/'|head -n 1`
dcop ${konqi_dcop} konqueror-mainwindow#${windowid} newTab ${konqi_argvs}
P.S. Ten DCOP není zas tak úplně špatnej :)
„O mrtvých jen v dobrém." „Pojďme se bavit o Stalinovi."
22.8.2006 14:20 lefti | skóre: 18 | blog: OneAndOnlyTrueBlog
Rozbalit Rozbalit vše Re: Konqueror a otevreni externiho linku
Jo, to jsem taky vsimnul, ja jsem to raci vyresil nahrazenim
konqi_dcop=`${dcop_bin}|grep konqueror|head -n 1`
za
konqi_dcop=`${dcop_bin}|grep konqueror|tail -n 1`
Jeste jsem tam mel nejaky problem s oteviranim lokalnich souboru, tady je nova verze:

#!/bin/bash
pwd_instead_of_homepage=1
konqi_argvs=$@
konqi_bin=`which -a konqueror|head -n 2|tail -n 1`
if [ ${konqi_bin} -ef $0 ];then
  echo "Set location of konqueror binary in konqi_bin in this script"
  exit
fi
dcop_bin=`which dcop`
if [ $? -ne 0 ];then
  echo "Can't find dcop in \$PATH"
  exit
fi

konqi_dcop=`${dcop_bin}|grep konqueror|tail -n 1`

if [ -f $1 ];then
 konqi_argvs="file://$PWD/${konqi_argvs}"
fi

if [ ${pwd_instead_of_homepage} -eq 1 ]; then
  if [ $# -eq 0 ]; then
    konqi_argvs=$PWD
  fi
fi



if [ -z ${konqi_dcop} ]; then
  ${konqi_bin} "${konqi_argvs}"
else
  if [[ "$1" =~ '^-' ]];then
    ${konqi_bin} "${konqi_argvs}"
  else
    dcop ${konqi_dcop} konqueror-mainwindow#1 newTab "${konqi_argvs}"
  fi
fi

22.8.2006 16:09 Petr "Glubo" Sýkora | skóre: 21 | blog: Glubnik
Rozbalit Rozbalit vše Re: Konqueror a otevreni externiho linku
problém je v konqueror-mainwindow#1... jelikoz #1 nemusi vzdy existovat... spustit konqueror, Ctrl-n, zavrit puvodni okno ... woala a musime posilat konqueror-mainwindow#2
„O mrtvých jen v dobrém." „Pojďme se bavit o Stalinovi."
15.9.2006 18:12 lefti | skóre: 18 | blog: OneAndOnlyTrueBlog
Rozbalit Rozbalit vše Re: Konqueror a otevreni externiho linku
fixed

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.