• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    KKL2401Emacs: escape meta alt control shift aneb prece nejsem sam, kdo nepouziva VIM
    Tento klub jsem zalozil, aby slouzil zhruba ke stejnym ucelum jako WRAITHova poradna ohledne VIMu na Mageu. Bohuzel narozdil od nej, ktery VIMu opravdu dobre rozumi, ja moc velke znalosti emacsu nemam, nicmene doufam, ze se treba spolecnymi silami tu a tam neceho dobereme.
    rozbalit záhlaví
    MRUCH
    MRUCH --- ---
    ANT_39: mozna jsem vyresil nas problem :-)
    viz http://www.sunsite.ualberta.ca/Documentation/Gnu/emacs-21.1/html_chapter/faq_5.html#SEC50

    ted uz mi to zarovnava temer presne tak, jak chci
    MRUCH
    MRUCH --- ---
    ANT_39: tak v tomhle je se nevyznam, veskere me pokusy neco upravit docela ztroskotaly ;) zkus kouknout sem, pokud si to jeste nezkoumal..
    http://cc-mode.sourceforge.net/html-manual/Syntactic-Analysis.html
    http://cc-mode.sourceforge.net/html-manual/Customizing-Indentation.html

    pripadne nejak prolizt celej ten manual ;) dej vedet, jestli neco vymyslis, tohle me taky docela zajima..
    ANT_39
    ANT_39 --- ---
    Hm, tak jinak. Duvod proc nechci automaticke zarovnavani je ten, ze celkem casto pisu kod podobny tomuto:
    std::for_each( container.begin(), container.end(), fcpp::ptr_to_fun( &Foo::foo ) );
    Jenze emacs si mysli, ze nejlepsi napad je druhy radek zarovnat pod prvni zavorku prvniho radku. Jde to nejak vypnout? Ono to syntakticke zarovnavani ma i jine neduhy, ale tohle me stve asi nejvic...
    ANT_39
    ANT_39 --- ---
    MRUCH: Slozenice jest '{'. Ukazu na prikladu. Mam nasledujici kus kodu - teda, chci mit:
    class SomeClass : public SomeBase { } Pominu jak to bude vypadat s c-syntactic-indentation, to se rozhodi uz to dedeni. I bez c-syn-in mi to vsak tu prvni slozenou zavorku zarovna na uroven tech dedicnosti, coz ja nechci. Podobne to dopadne i v nasledujicim pripade: void some_method() { if ( ... ) { // bla bla } }
    Radka s ifem se samozrejme poslusne zarovna, aby licovala s tou predchozi, coz je presne to co nechci. Jestli ti to nedela, tak se to mozna nastavuje neke jinde... mimo c-mode (ale to nedava smysl). Snad najit nejake electric-brace-behavior... budu googlit :)
    MRUCH
    MRUCH --- ---
    ANT_39: no bud Te spatne chapu, nebo.. se mi to nikam nijak nezarovnava.. slozenice jest '{' nebo '}' ?
    ANT_39
    ANT_39 --- ---
    MRUCH: Pisu v c++-mode. To co radis jsem zkousel. Vskutku uz skoro nezarovnava, krome pripadu kdy napisu slozenici, to radek zarovna do lajny s predchozim. :-(
    By clovek neveril jak ho bude stvat takova sikovna pomucka...
    MRUCH
    MRUCH --- ---
    ANT_39: nevim v cem pises, ale pravdepodobne to bude stejny/podobny: M-x set-va<TAB><RET>c-syn<TAB><RET>nil<RET> ;D
    ANT_39
    ANT_39 --- ---
    Hm, tak jsem se zkusil vim, jedit, nedit, a pokorne se vracim zpet k emacsu. Ne ze by mne nestval - zrovna ted bych uvital kdyby nechal svych chytracinek a prestal mi automaticky zarovnavat kod :-/

    Kazdopadne, jeden uzitecny odkaz:
    http://astron.berkeley.edu/~robishaw/comp/emacs.html
    MRUCH
    MRUCH --- ---
    C-M-% query-replace-regexp
    AHARAZ
    AHARAZ --- ---
    Prosim, jak na replace-regexp od znacky az ke kurzoru?
    DAVE_PAGE
    DAVE_PAGE --- ---
    KKL2401: jj... C-c % C-b preparseruje celej buffer
    KKL2401
    KKL2401 --- ---
    DAVE_PAGE: Tim jsem chtel rict, ze kdyz das C-h m, tak Ti to popise zapnute mody, tudiz je mozne, ze tam tu funkci nekde uvidis. Taky je mozne dat C-c C-h a podivat se. Nebo je mozno dat C-h a - tam zadat mmm a odenterovat. Nebo dat M-x mmm TAB a podivat se na seznam vsech funkci, co zacinaji mmm. Nebo se podivat do dokumentace k tomu mmm-modu.
    DAVE_PAGE
    DAVE_PAGE --- ---
    KKL2401: nevim...;-(...je to ale docela mozny...ale ja nejsem rozhodne emacspert...
    KKL2401
    KKL2401 --- ---
    DAVE_PAGE: Aha jasne. A nema na to ten mmm-mode nejakou funkci, ktera to projde a znova prechrousta? Ja mam pocit, ze tam neco takovyho je.
    DAVE_PAGE
    DAVE_PAGE --- ---
    KKL2401: ...tak...vcera jsem napsal par radek v PHP/HTML a nejaky trepky tam sou ;-)... treba tahle:
    Nactu otevru nejakej existujici php file....ten se obarvi tak jak bych to cekal (php jina, html jina a css jinak) ale pokud treba blok php rozdelim na dva a vlozim mezi ne HTML tak to je porad oznaceno jako PHP ;-( ... zkousel jsem vypnout a zapnout barveni, ale to nepomohlo...
    DAVE_PAGE
    DAVE_PAGE --- ---
    KKL2401: jo rozchodil...ale zatim poradne nevyzkousel, takze nevim jestli to ma nejaky boty...
    KKL2401
    KKL2401 --- ---
    DAVE_PAGE: A rozchodils to podle toho odkazu? Ja na to nenasel cas, navic je fakt, ze to v tuto chvili tak urgentne nepotrebuju. Nicmene naposled, co si vzpominam, ze jsem zkousel mmm-mode, tak to bylo takovy trochu rozpacity.
    DAVE_PAGE
    DAVE_PAGE --- ---
    KKL2401: 18.45:28 29.9.2003

    jj....dik za odkaz, to sem docela potreboval.
    BTW: vzpominam si ze na Invexu (+- 2001) reagoval pan Janik na dotaz o moznosti spojeni HTML/PHP prostredi slovy, ze to bohuzel nejde...;-)
    KKL2401
    KKL2401 --- ---
    Aha, to mam z toho, ze jsem nejak nekde objevil M-C-/, ale uz jsem neobjevil M-/. :-( Tohle skutecne funguje, dekuji. :-)
    MRUCH
    MRUCH --- ---
    KKL2401: pokud mas AbCdE nekde napsany, tak kdyz pak das A (musi bejt velky) M-/, tak to doplni presne
    KKL2401
    KKL2401 --- ---
    Mam problem s autodoplnovanim - sice mi krasne funguje na M-C-/, jenze ztrati se mi case-sensitivita. Pokud mam definovany identifikator AbCdE, tak mi to jinde doplni jako abcde, coz je k nicemu. :-( Da se proti tomu nejak bojovat?
    KKL2401
    KKL2401 --- ---
    Mimochodem objevil jsem stranku, kde kdosi popisuje, kterak rozchodil pomoci mmm-mode v jednom bufferu php-mode, psgml-mode a css-mode.
    Kliknutím sem můžete změnit nastavení reklam