Antirux » Kategorie » Ubuntu

Vychytávky v Latexu

[Úterý 12.4.11, 18:39, Edit: Pondělí 23.5.11, 23:14] Kategorie: Ubuntu, VUT Brno

Jestli ti Latex ještě nefunguje, mám tu článek jak rozchodit Latex na Kubuntu.

Jinak toto jsou poznámky co jsem nasbíral během několika semestrů během kterých používám Latex na psaní semestrálních prací apod.

Spojení buňek v tabulce

Je třeba volat balíček multirow

\usepackage{multirow}

Následně se použije například

\multirow{2}{*}{textbf{Charakteristika}}
& \multicolumn{4}{|c|}{textbf{Materiály}}

Problém s pomlčkou v cline

Pokud je potřeba v buňce mít horizontální čáru jen od sloupce A do sloupce B, tak není možné použít pouze příkaz cline{A-B}, protože v czech babelu je pomlčka tzv. aktivní znak, takže se musí použí příkaz shorthandoff:

\shorthandoff{-}
...
\cline{1-2}
...
\shorthandon{-}

Horizontální přetékání odstavce

Pokud v nějakém odstavci přetéká text (nejčastěji kvůli dlouhému nedělitelnému slovu), lze použít prostředí sloppypar, které upraví mezery mezi slovy méně striktně a docílí tak správného uspořádání odstavce (někdy mohou vzinkout až příliš velké mezery):

\begin{sloppypar}
zrádný odstavec
\end{sloppypar}

Jak napsat stupně Celsia

Nejlépe vypadá asi:

Dnes je 20$^circ$C

Nečíslování nadpisů a vyřazení z obsahu

Docílí se toho pomocí *, například:

\section*{Introduction}
\subsection*{Test}

Seznam typu typu (a), (b)

Je potřeba použít balíček:

\usepackage{enumerate}

Potom lze psát:

\begin{enumerate}[(a)]
\item první
\item druhý
\end{enumerate}

Vychytávky s matematikou

Je potřebný balíček amsmath:

\usepackage{amsmath}

Rovnice na víc řádků

Stačí použít prostředí split (nutný amsmath)

begin{equation}
begin{split}
A = & a + b + c + (prvni radek)
    & + d + e + f (druhy radek zarovnan pod prvni)
end{split}
end{equation}

Zápis matic (bmatrix)

Po použití amsmath lze použít:

\begin{bmatrix}
...

Vícenásobné spouštění příkazu PDFlatex

Proč použít PDFlatex 3krát? Protože:

  • poprvé vygeneruje dokument
  • podruhé vygeneruje např. obsah (či jiné odkazy, reference apod.)
  • potřetí poupraví stránkování v případě, že obsah přetekl přes jednu stranu!

České uvozovky

\uv{slovo v uvozovkách}

Dokreslit obrázky než půjdem dál

Pro vykreslení všech zatím nevykreslených obrázků než se bude pokračovat:

\clearpage

Kubuntu 10.04 ThinkPad LCD brightness bug

[Čtvrtek 30.9.10, 16:02, Edit: Čtvrtek 30.9.10, 16:25] Kategorie: Ubuntu

Problém

Na Kubuntu 10.04 (KDE 4.4) se mi na ThinkPadu T60 ztmavoval displej. Při zapnutí byl tmavý, při odpojení (ale i připojení) napájení se ztmavil, při přechodu do terminálu a zpět se ztmavil, zkrátka docela otravná záležitost.

Googlením před nějakou dobou jsem narazil na fakt, že je to docela běžný problém, ale nepodařilo se mi rozchodit opravu.

Nejjednodušší otestování problému je přejít do terminálu a zpět, tedy <CTRL> + <ALT> + <F7> a následně <CTRL> + <ALT> + <F8>. Jestli máte stejný problém, při vrácení zpět do grafického prostředí je LCD ztmaveno na minimum.

Případně se dá použít exaktní metoda, zadáním příkazu:

sudo lshal | grep laptop_panel
a zkontrolováním hodnoty
laptop_panel.num_levels
v případě osmičky jste v pohodě (starší kernely):
laptop_panel.num_levels = 8  (0x1)  (int)
v případě jedničky máte pravděpodobně stejný problém:
laptop_panel.num_levels = 1  (0x1)  (int)

Řešení

Vytvořit soubor

/etc/hal/fdi/policy/10-thinkpad-backlight.fdi
a do něj umístit nastavení na zmíněnou osmičku:
<?xml version="1.0" encoding="ISO-8859-1"?> <!-- -*- SGML -*- -->
<deviceinfo version="0.2">
  <device>
    <match key="info.category" string="laptop_panel">
      <match key="linux.sysfs_path" suffix="/backlight/thinkpad_screen">
         <merge key="laptop_panel.num_levels" type="int">8</merge>
      </match>
    </match>
  </device>
</deviceinfo>

Displej pak funguje, jak by měl!

Via

http://kubuntuforums.net/forums/index.php?topic=3111005.0
a upozornění na koncovku
http://www.mail-archive.com/desktop-bugs@lists.ubuntu.com/msg446739.html

Latex na Kubuntu 9.10

[Středa 19.5.10, 17:49, Edit: Úterý 12.4.11, 23:09] Kategorie: Ubuntu, VUT Brno

a rozchození šablony FEKTu či AMT

Možnosti instalace Latexu

Naprostý základ: pro instalaci naprostého základu latexu je nejjednodušší otevřít konzoli a zadat:

sudo apt-get install texlive-base

Pro představu, kolik je to dat, dostaneme odpověď ve stylu:

Need to get 45.4MB of archives.
After this operation, 106MB of additional disk space will be used.

Naprosto vše: se základem ovšem není možné využívat složitější funkce, natož sázet česky. Pro obejítí všech problémů se dá instalovat:

sudo apt-get install texlive-full

Pokud vám není milé vidět stovky mega balastu co nikdy nevyužijete, určitě vás nepotěší:

Need to get 1,014MB of archives.
After this operation, 1,810MB of additional disk space will be used.

Ideální varianta

Pro základ spolu se sázením češtiny doporučuju:

sudo apt-get install texlive texlive-lang-czechslovak

Velikostně se to dá:

Need to get 219MB of archives.
After this operation, 388MB of additional disk space will be used.

Zvládnutí Latexu

Pak už stačí "jen" se naučit vytvořit dokument v Latexu. Jako dobrou a rychlou metodu doporučuji anglickou wikiknihu o Latexu

Vytvoření PDF

Jako nejjednodušší variata stačí v obyčejném textovém editoru vytvořit .tex soubor, ze kterého se následně vytvoří PDF pomocí příkazu

pdflatex soubor.tex

Případně lze vybrat jeden z mnoha Tex editorů. K Ubuntu je víc informací a odkazů na http://wiki.ubuntu.cz/LaTeX

Rozchození šablony FEKT či AMT

Fakulta elektrotechniky VUT v Brně má svoji oficiální šablonu na stránce http://latex.feec.vutbr.cz/ (v sekci download). Jsou zde i návody pro instalaci různých editorů a kompilátoru pro Windows, případně diskuze, na kterém lze nalézt řešení mnoha problémů.

Šablonu Ústavu automatizace a měřící techniky (která se liší od obecné fakultní) vytvořil na základě šablony FEKT spolužák Miroslav Graf. Oficiální odkaz je například na stránkách docenta Václavka (http://latex.vaclavek.net/sablony), což však vede stejně k Mirovi na http://www.stud.feec.vutbr.cz/∼xgrafm00/.

Rozchození šablony na Kubuntu

Při pokusu vytvořit PDF ze šablony však získáme chybu:

! LaTeX Error: File ‘acronym.sty’ not found.

Odpověď na tento problém lze nalézt například i ve výše zmíněné diskuzi. Stačí doinstalovat jeden balíček:

sudo apt-get install texlive-latex-extra

Zrovna pár mega to teda není, ale co se dá dělat:

Need to get 210MB of archives.
After this operation, 315MB of additional disk space will be used.

V tuto chvíli už by měl na šablonu fungovat jak má…

Vypořádat se s nepořádkem

Protože vytváření PDFek vytváří spoustu souborů navíc, vytvořil jsem si skript, pro smazání nepotřebného balastu (nenašel jsem žádnej autoclean přímo ve funkci pdflatex):

cleanLatex

#!/bin/bash
rm -fv *.toc *.aux *.log *.out *~ text/*.aux text/*~

Rychlé pdflatexení

Protože pro vytvoření některých seznamů ve výsledném pdf je potřeba pustit příkaz pdflatex dvakrát za sebou, vytvořil jsem si pro "kompilaci" (a smazání balastu) ještě jeden skript:

makeLatex <nazev_souboru>

#!/bin/bash
if [$1 = ]; then
        echo "Nezadan soubor"
    exit 0
fi

pdflatex $1
pdflatex $1
pdflatex $1
./cleanLatex

Ještě tu mám nějaké vychytávky v Latexu (je tam i vysvětlení, proč pouštět pdflatex 3krát).

Křížky v grafech OpenOffice.org

[Čtvrtek 11.3.10, 11:48] Kategorie: Ubuntu

Pokud jste někdy dělali grafy v OOo (OpenOffice.org) a potřebovali jste je prezentovat například ve škole, možná jste se setkali s tím, že zde nejde automaticky vkládat značky do grafu jako křížky.

Pozn.: I ve Excelu (MS Word) je potřeba nechat vykreslit čtverec a nastavením barvy popředí a pozadí vytvořit křížek.

Řešení

Vytvořit si nějaký vhodný křížek (nebo použít moji sadu křížků: Černý křížek Modrý křížek Zelený křížek Červený křížek [ v ZIPu | či TARu ] i s originálem v gimpovském .xcf)

V OOo vytvořit graf, dvojklikem na graf ho otevřít k editaci.

Dvojklikem na jednu ze značek otevřít nabídku Data series.

V první záložce Line, v pravé části Icon, pomocí nabídky Select a pole From file... vybrat na disku křížek.

Otevřená nabídka Data series

Křížek bude, podle náhledu dole, vypadat trošku zdeformovaně

Výběr křížku a zdeformovaný křížek

Proto pomocí Width a Height nastavíme vhodnou velikost (pro moje křížky je to 0.30 cm)

Pěkný křížek

Výsledek vypadá korektně:

Výsledek

Pozn.: Obrázky jsou z OpenOffice.org 3.1.1

Dva monitory na Kubuntu 9.10

[Neděle 21.2.10, 13:31, Edit: Sobota 25.6.11, 21:26] Kategorie: Ubuntu

Úvodem

Pokud řešíte jakékoliv problémy s více monitory na Ubuntu/Kubuntu jako první zkuste vypnout speciální efekty (s nimi je rozchození rozšířené plochy mnohem větší oříšek).

Po delším hledání na netu a zkoušení několika variant jsem dospěl k závěru, že ideálním řešením, jak rozšířit plochu na Kubuntu 9.10, je využít automatický skript, který při zapnutí Xek zjistí připojení sekundárního monitoru a vše patřičně nastaví.

Mimochodem v (U/K)ubuntu 9.10 už sám od sebe není Xorg.conf.

Zjištění výstupů

Zjistit výstupy lze jednoduše příkazem:

xrandr -q

Na displeji se zobrazí něco jako:

Screen 0: minimum 320 x 200, current 2944 x 1080, maximum 4096 x 4096
VGA1 connected 1920x1080+1024+0 (normal left inverted right x axis y axis) 477mm x 268mm
   1920x1080      60.0*+
   1280x1024      75.0
   1152x864       75.0
   1024x768       75.1     60.0
   832x624        74.6
   800x600        75.0     60.3
   640x480        75.0     60.0
   720x400        70.1
LVDS1 connected 1024x768+0+0 (normal left inverted right x axis y axis) 286mm x 214mm
   1024x768       60.0*+   85.0     75.0     70.1     60.0*    50.0
   832x624        74.6
   800x600        85.1     72.2     75.0     60.3     56.2
   640x480        85.0     72.8     75.0     60.0     59.9
   720x400        85.0
   640x400        85.1
   640x350        85.1
DVI1 disconnected (normal left inverted right x axis y axis)
TV1 disconnected (normal left inverted right x axis y axis)

Což znamená že mám aktivní výstupy VGA1 a LVDS1

Automatický skript

Pro automatické rozšiřování plochy je potřeba ve složce

/etc/X11/Xsession.d
vytvořit soubor 45custom_xrandr-settings (důležité je i to číslo 45 na začátku, které určuje pořadí vykonávání skriptů ve složce při startu Xek).

Do tohoto souboru je třeba zapsat například:

# If an external monitor is connected, place it with xrandr

# External output may be "VGA" or "VGA-0" or "DVI-0" or "TMDS-1"
EXTERNAL_OUTPUT="VGA1"
INTERNAL_OUTPUT="LVDS1"
# EXTERNAL_LOCATION may be one of: left, right, above, or below
EXTERNAL_LOCATION="right"

case "$EXTERNAL_LOCATION" in
       left|LEFT)
               EXTERNAL_LOCATION="--left-of $INTERNAL_OUTPUT"
               ;;
       right|RIGHT)
               EXTERNAL_LOCATION="--right-of $INTERNAL_OUTPUT"
               ;;
       top|TOP|above|ABOVE)
               EXTERNAL_LOCATION="--above $INTERNAL_OUTPUT"
               ;;
       bottom|BOTTOM|below|BELOW)
               EXTERNAL_LOCATION="--below $INTERNAL_OUTPUT"
               ;;
       *)
               EXTERNAL_LOCATION="--left-of $INTERNAL_OUTPUT"
               ;;
esac

xrandr |grep $EXTERNAL_OUTPUT | grep " connected "
if [ $? -eq 0 ]; then
    xrandr --output $EXTERNAL_OUTPUT --off
    xrandr --output $INTERNAL_OUTPUT --auto --primary --output $EXTERNAL_OUTPUT --auto $EXTERNAL_LOCATION
    # Alternative command in case of trouble:
    # (sleep 2; xrandr --output $INTERNAL_OUTPUT --auto --output $EXTERNAL_OUTPUT --auto $EXTERNAL_LOCATION) &
else
    xrandr --output $INTERNAL_OUTPUT --auto --primary --output $EXTERNAL_OUTPUT --off
fi

Čerpáno z http://bealetech.com/blogs/sean/2009/12/kubuntu-910-dual-monitors

Update

Pokud si nastavíte (jako já) například klonovaný výstup na projektor pomocí System → KRandRTray, přestane vám pravděpodobně automatický skript fungovat (po jeho spuštění a nastavení všeho se spustí KRandRTray a všechno zvorá).

Vše se dá naštěstí napravit. Stačí mrknout do ~/.kde/share/config/krandrrc a umazat nastavení, které se týká například projektoru. Vše pak běhá, zase jak má.

Změny balíčků v Ubuntu 9.10 (Karmic Koala)

[Sobota 7.11.09, 13:51, Edit: Pondělí 8.3.10, 13:53] Kategorie: Ubuntu

Již při instalaci Ubuntu 8.10 jsem měl nápad… co si někam psát, které význačné balíčky jsem přidal a které odebral? Že by se mi to u 9.10 konečně podařilo?

Added

  • Apache2 (pro testování vytvářených webových stránek)
  • Emacs 22 (editor, instaloval jsem jej hlavně pro podporu zvýraznování syntaxe WML - značkovací jazyk pro vytváření scénářů hry Wesnoth)
  • Gstreamer0.10 (pro přehrání MP3 po mě chtěl počítač tři balíčky, tak proč mu nevyhovět)
    • gstreamer0.10-ffmpeg
    • gstreamer0.10-fluendo-mp3
    • gstreamer0.10-plugins-ugly
  • Hugin (kvalitní program pro vytváření panoramatických snímků)
  • Imagemagick (úpravy obrázků, viz Hromadná změna velikosti obrázků)
  • Libv4l (rozchození webkamery, viz Webkamera v Ubuntu)
  • PhpMyAdmin (pro jednodušší zprávu mysql databáze)
  • Python-enchant (pro "spell check" programu wmllint - kontrola souborů wesnothu)
  • Wesnoth
  • Wicd (viz Wicd na Ubuntu 9.10)

Removed

  • network-manager (kvůli Wicd)

Konec

Moje myšlenka opět skončila špatně :) Jednak jsem si řekl, že zkusím KDE 4.2, takže "sudo apt-get install kubuntu" udělalo v balíčcích něco, co se nedá snad ani pořádně zdokumentovat a hned nato jsem se pokoušel (neúspěšně) rozchodit jedno nové české originální DVD (stejně největší problém bude, že na obalu má značku BSA). No a tím už jsem udělal tak dokonalej guláš, že jsem na záznamy opět rezignoval. Tak snad u Kubuntu 10.04 ;)

Instalace Wicd bez internetu na Ubuntu 9.10 (Karmic Koala)

[Sobota 7.11.09, 11:50, Edit: Pondělí 9.11.09, 21:11] Kategorie: Ubuntu

Proč?

Nový Network Manager v Ubuntu není špatný, ale nedovoluje například připojit se k wifi síti, pokud chcete zadat klíč v hexa podobě (což Wicd hravě zvládá). Kdy k tomu může dojít? Pokud jste někdy byli u někoho na návštěvě a chtěli jste se připojit na jeho wifi, avšak administrátor nebyl nikde v dosahu a dotyčný neznal klíč sítě, jen měl na svém počítači klíč čitelný v hexa podobě.

Offline instalace Wicd

  • Stáhnout potřebné balíčky:
    • na počítači, kde je přístup k internetu, se podívat na http://packages.ubuntu.com
    • zarolovat kousek dolů a do vyhledávání zadat "wicd"
    • stáhnout balíček wicd (pro mě to byl wicd_1.6.1-3)
    • obdobně najít a stáhnout balíček který wicd potřebuje: python-urwid (něco jako python-urwid_0.9.8.4-1)
  • (flashkou) nakopírovat na svůj počítač oba balíčky
  • Odstranit network-manager (jinak nelze wicd nainstalovat)
    • otevřít Synaptic (System > Administration > Synaptic Package Manager)
    • vyhledat balíček "network-manager"
    • odebrat network-manager i network-manager-gnome
    • zavřít synaptic
  • dvojklikem nainstalovat nejdříve python-urwid a potom wicd
  • restartovat systém (určitě by to šlo i bez toho, ale wicd se mi nepodařilo rovnou spustit -je možné že byl systém jenom nějaký zmatený)
  • a je hotovo :)

Hromadná změna velikosti obrázků

[Úterý 15.9.09, 23:27, Edit: Středa 25.1.12, 20:25] Kategorie: Programování, Ubuntu

(abych si zase příště nemusel lámat hlavu a vzpomínat ;) )

Pod linuxem je ideální mít ImageMagick.

Poté stačí vytvořit složku a zkopírovat klidně stovky obrázků do ní

mkdir small
cp *.jpg small/

a následně aplikovat na kopie příkaz mogrify a dle počtu obrázků chvilku počkat.

cd small
mogrify -resize 40% *.jpg

A ještě jedna vychytávka s mogrify - odbarvování obrázků:

mogrify -colorspace GRAY -verbose *.jpg

Webkamera v Ubuntu

[Čtvrtek 27.8.09, 19:42, Edit: Pondělí 8.3.10, 14:09] Kategorie: Ubuntu

Nedařilo se mi pod Ubuntu Jaunty Jackalope (9.04) rozchodit webkameru Canyon CNR-WCAM413.

Dle lsusb se kamera hlásila jako

ID 0ac8:0323 Z-Star Microelectronics Corp. Luxya WC-1200 USB 2.0 Webcam

Jedná se tedy o jednu z Linuxem špatně podporovaných webkamer…

Nakonec pomohl návod:

Ověření

Nainstalovat "camstream"

Zapnout camstream a přečíst si něco jako:

VIDIOCSYNC(1) failed (Invalid argument)

Řešení

  1. Stáhnout a rozbalit http://people.atrpms.net/~hdegoede/libv4l-0.5.0.tar.gz
  2. Instalovat "sudo make install"
  3. Otevřít terminál
  4. $ export LD_PRELOAD=/usr/local/lib/libv4l/v4l1compat.so
  5. $ camstream
Kamera by teď měla fungovat.

Automatické řešení pro skype

  1. Vytvořit shellový skript (například skype_wrapper), uložit ho někam (např.: /usr/local/bin/skype_wrapper) s obsahem:
    #!/bin/bash
    export LD_PRELOAD=/usr/local/lib/libv4l/v4l1compat.so
    skype
  2. Otevřít System/Root Menu manager, najít Skype, změnit příkaz "skype" => "/usr/local/bin/skype_wrapper".
  3. Otevřít Skype (restartovat, pokud jede). Video by teď mělo fugovat

Jedná se o návodu na https://answers.launchpad.net/ubuntu/+question/49739

Kamera funguje, dokonce i ve Skype, sice je vše laděno do divných barviček, ale prozatím mi to stačí :o)

Update: Už je vše v pořádku. Divné barvičky byly asi špatným osvětlením a tím, že kamera (či Skype) sama mění ladění barev. Při dobrém osvětlení je to OK.

Update: Stejně tak kamera nefungovala ani v Ubuntu Karmic Koala (9.10), stejný postup pomohl.

Made by Antirux