Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2008-09-23 11:44:57

  ShinnRa - Użytkownik

ShinnRa
Użytkownik
Zarejestrowany: 2008-04-10

Emacs i ustawienia

Szukam prostego opisu jak w Emacs 21 i 22 włączyć kolorowanie składni dla C/C++, CSS, PHP, HTML, JS, SH, Perl, Python i by [Tab] miał długość 8 spacji ale by nie był zastępowany przez spacje. No i fajnie by było jakby mógł jeszcze numerować linie.

Znalazłem kilka opisów na google i jakoś mi do końca nie działa, bo albo [Tab] w ogóle nie działa (wciska [Tab] i nic żadnej reakcji), albo kolorowanie nie działa dla wszystkich języków, albo działa częściowo.

Jakby ktoś miał to łopatologicznie wyjaśnione byłbym wdzięczny.

Ostatnio edytowany przez ShinnRa (2008-09-23 11:45:28)


rlu: 398881 | Debian user/lover

Offline

 

#2  2008-09-23 12:53:18

  czadman - Bicycle repairman

czadman
Bicycle repairman
Skąd: Wrocław
Zarejestrowany: 2005-07-08

Re: Emacs i ustawienia

Na emacsie się nie znam, ale zapewne coś znajdziesz pod http://coldpeer.jogger.pl/2008/05/17/emacs-linkowisko/ .
IMHO i nie tylko IMHO stosowanie czystych tabulatorów zamiast spacji to niedobry zwyczaj, choćby ze względu na to, że różne edytory różnie interpretują długość taba. Polecam lekturę PEP 666 ;)


http://www.debian.org/logos/openlogo-nd-50.png

Offline

 

#3  2008-09-23 13:04:09

  azhag - Admin łajza

azhag
Admin łajza
Skąd: Warszawa
Zarejestrowany: 2005-11-15

Re: Emacs i ustawienia

czadman napisał(-a):

IMHO i nie tylko IMHO stosowanie czystych tabulatorów zamiast spacji to niedobry zwyczaj, choćby ze względu na to, że różne edytory różnie interpretują długość taba.

Niestety w pewnych przypadkach tab jest wymagany, np. w Makefile'ach.

Poza tym w pełni się zgadzam.


Błogosławieni, którzy czynią FAQ.
opencaching :: debian sources.list :: coś jakby blog :: polski portal debiana :: linux user #403712

Offline

 

#4  2008-09-23 15:07:57

  ShinnRa - Użytkownik

ShinnRa
Użytkownik
Zarejestrowany: 2008-04-10

Re: Emacs i ustawienia

ehh... lipa. Wstawiłem sobie takie coś na nawigację

Kod:

(global-set-key [home]      'beginning-of-line)   ; [Home]
(global-set-key [kp-home]   'beginning-of-line)   ; Keypad [Home]
(global-set-key [end]       'end-of-line)         ; [End]
(global-set-key [kp-end]    'end-of-line)         ; Keypad [End]
(global-set-key [C-home]    'beginning-of-buffer) ; [Ctrl-Home]
(global-set-key [C-end]     'end-of-buffer)       ; [Ctrl-End]

(global-set-key "\C-l"      'goto-line)           ; [Ctrl]-[L]
(global-font-lock-mode t)

i jedynie co działa to Ctrl+l


rlu: 398881 | Debian user/lover

Offline

 

#5  2008-09-23 16:44:00

  jezoo - Dzięcioł

jezoo
Dzięcioł
Skąd: Z lasu
Zarejestrowany: 2005-09-02

Re: Emacs i ustawienia

ShinnRa, i jaki moral z tego?
kozystaj z VIM;a :D


LRU #480459

Offline

 

#6  2008-09-23 20:22:01

  ShinnRa - Użytkownik

ShinnRa
Użytkownik
Zarejestrowany: 2008-04-10

Re: Emacs i ustawienia

heeh...  no właśnie z vima obecnie kotam ale podobno emacs jest lepsy.


rlu: 398881 | Debian user/lover

Offline

 

#7  2008-09-24 00:32:50

  harry666t - Członek DUG

harry666t
Członek DUG
Zarejestrowany: 2007-01-28

Re: Emacs i ustawienia

co do set keyów - domyślne bindingy do skakania do początku i końca linii są IMHO lepsze (C-a oraz C-e), działają również w bashu czy w ipythonie (tz tam gdzie jest readline), oraz w wielu aplikajach GTK. są po prostu standardem (dawno temu nawet netscape ich używał).

do częstego używania emacsa polecam przebindować (w Xach) caps lock na ctrl. nie pamiętam tylko jak się to robiło, a w moich plikach startowych mam KOMPLETNY burdel i nie znajdę ci tego po prostu :D

tryby podświetlania wszelkich źródeł są ustawiane na "dzień dobry" po otwarciu jakiegoś pliku, rozpoznawane jest chyba rozszerzenie. jeśli nie, tryby można włączać poleceniami w stylu: M-x cc-mode, M-x python-mode, itp.

jbc, fragmenty mojego ~/.emacs:

Kod:

(custom-set-variables
 '(blink-cursor-mode nil) ; nie mryga kursor, mryganie jest wkurzające
 '(case-fold-search t) ; ?...
 '(global-hl-line-mode nil nil (hl-line)) ;?...
 '(home-end-enable t) ; home i end działają tak jak w twoim przykładzie
 '(indent-tabs-mode t) ; tab indentuje zamiast wstawiać "fziyczniego" taba
 '(mouse-wheel-mode t nil (mwheel)) ; kółko
 '(recentf-mode t) ; dodaje menu z ostatnio używanymi plikami
 '(show-paren-mode t nil (paren)) ; podświetlanie nawiasów (?)
 '(standard-indent 4) ; standardowa długość indenta
 '(tooltip-mode nil nil (tooltip))) ; ?...

;; nie pamiętam co one ustawiały... to są wartości ustawiane przez 
;; menu konfiguracji

(server-start)
;; startuje serwer (można wtedy mieć jedno okno emacsa uruchomione
;; przy logowaniu, pliki otwierać poleceniem emacsclient, i nie wychodzić
;; z edytora przez całą sesję) polecam pogooglać, bardzo przydatne!
;; i ustawić zmienną śrddowiskową EDITOR na emacsclient (:

(c-set-offset 'case-label '+)
;; case'y w switch() w c i c++ są nieco ładniej indentowane (kwestia gustu)

(setq inhibit-startup-message t)
;; bez głupiego intra z propagandą FSF :P

(setq default-tab-width 4)
;; długość taba?...

;; i jedna przydatna funkcja:
(defun indent-region-as (other-mode)
  "Indent selected region as some other mode.  Used in order to indent source code contained within HTML."
  (interactive "aMode to use: ")
  
  (save-excursion
    (let ((old-mode major-mode))
      (narrow-to-region (region-beginning) (region-end))
  (funcall other-mode)
  (indent-region (region-beginning) (region-end) nil)
  (funcall old-mode)))
  (widen))
;; indentuje zaznaczony region według innego stylu (przydatne jeśli np
;; robisz krótki "here document" w pythonie wewnątrz skryptu w bashu,
;; lub fragment stylu CSS na statycznej stronce HTML, itp)

Swoją drogą domyślne znaczenie C-l (centrowanie tekstu) jest dla mnie lepsze. czasem używam emacsa na jakimś dzikim terminalu, na którego wyjście próbuje też drukować tekst jakiś inny program. użycie C-l natychmiast przeryswuje ekran, co pomaga.

I jeszcze jedna rzecz - jeśli musisz wykonać kilkanaście podobnych edycji (np. usunąć trzy znaki z początku wiersza, usunąć cztery z końca i dopisać "foo", i przejść do następnej linii, powtórzyć ("C-a C-u 3 C-f C-u 3 DEL C-e C-u 4 DEL foo C-n")), a nie da się tego zrobić w jakiś prosty sposób poleceniem replace-regex, możesz sobie zrobić szybkie makro. start nagrywania to "C-x (", koniec nagrywania to "C-x )". wywołujesz makro poleceniem "M-0 C-x e" (meta-zero, control-x, e). O ile się nie mylę możesz też wywołać je wielokrotnie za pomocą C-u (numer) (polecenie), na przykład tak jak "C-u 12 C-n" przenosi cię o 12 linijek w dół, tak "C-x (", "abc", "C-x )", "C-u 3 M-0 C-x e" wypisze ci na ekranie "abcabcabcabc".

polecam też używanie C-n, C-p, C-b, C-f  itp do poruszania się po tekście - od przenoszenia rąk pomiędzy literkami a strzałkami boli prawy nadgarstek :P wiedzą o tym VIMowcy, którzy zapewne korzystają się z HJKL.

drodzy VIMowcy... niestety, emacs was OWNUJE. nie dlatego że ma LISPa, jedyny język programowania, w którym dobry kod jest PRZEPIĘKNYM DZIEŁEM SZTUKI, nie dlatego że nie wymaga instalacji na maszynie windowsowej z kontem zwykłego usera, przez co można go zassać z ftp i używać zamiast notatnika na labkach z programowania, nie dlatego że odciąża programistę z tysiąca różnych drobnych, ale upierdliwych zadań (jak np. półautomatyczna obsługa systemu kontroli wersji), nie dlatego że jest funkcjonalnie ekwiwalnetem potężnego IDE, nie dlatego że napisał go sam Stallman, nie dlatego że większość aplikacji uniksowych, tak w Xach jak i na konsolę rozpoznaje kilka najważniejszych jego keybindingów, nie dlatego że ma tryb psychoterapeuty, nie dlatego, że jest emulatorem terminala, nie dlatego, że nawet potrafi emulować interfejs VIMa, nie dlatego, że poprawia pisownię, odbiera pocztę, robi za przeglądarkę www, czytnik newsów i klienta jabbera, nie dlatego, że był pierwszym projektem używającym prototypu GNU GPL (tz. Emacs Public License), nie dlatego, że autor oryginalnego Vi, Bill Joy, sam używa emacsa...

ale dlatego, że wystarczy zapodać "M-x tetris" aby zagrać w najgenialniejszą grę świata.

szczególnie w wersji 21.x emacsa, gdzie podczas pauzy można było nadal przesuwać i opuszczać klocki :D

więcej propagandy:

I use emacs, which might be thought of as a thermonuclear word processor. It was created by Richard Stallman; enough said. It is written in Lisp, which is the only computer language that is beautiful. It is colossal, and yet it only edits straight ASCII text files, which is to say, no fonts, no boldface, no underlining. In other words, the engineer-hours that, in the case of Microsoft Word, were devoted to features like mail merge, and the ability to embed feature-length motion pictures in corporate memoranda, were, in the case of emacs, focused with maniacal intensity on the deceptively simple-seeming problem of editing text. If you are a professional writer--i.e., if someone else is getting paid to worry about how your words are formatted and printed--emacs outshines all other editing software in approximately the same way that the noonday sun does the stars. It is not just bigger and brighter; it simply makes everything else vanish.

EMACS FTW!


[ /\/\/\ o_0 ----->>>       Ascii Art Userbar User ]

"steal and steal and steal some more and give it to all your friends and keep on stealin'"
- Reznor

Offline

 

#8  2008-09-24 06:06:12

  czadman - Bicycle repairman

czadman
Bicycle repairman
Skąd: Wrocław
Zarejestrowany: 2005-07-08

Re: Emacs i ustawienia

http://www.faqs.org/docs/bashman/bashref_102.html

Ja poza tym używam vimologii w firefoksie, screenie ....
Z tym standardem to by bym ostrożny.


http://www.debian.org/logos/openlogo-nd-50.png

Offline

 

#9  2008-09-24 15:18:24

  harry666t - Członek DUG

harry666t
Członek DUG
Zarejestrowany: 2007-01-28

Re: Emacs i ustawienia

powygłupiać się nie można? ;p


[ /\/\/\ o_0 ----->>>       Ascii Art Userbar User ]

"steal and steal and steal some more and give it to all your friends and keep on stealin'"
- Reznor

Offline

 

#10  2008-09-24 16:09:35

  jezoo - Dzięcioł

jezoo
Dzięcioł
Skąd: Z lasu
Zarejestrowany: 2005-09-02

Re: Emacs i ustawienia

a ja dopowiem jeszcze tyle:
"Emacs to dobry system operacyjne ale ma edytor do dupy" :]


LRU #480459

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)