¡Esta es una revisión vieja del documento!
%% Archivo de configuración para jed ~/.jedrc %% Si la línea está antecedida por un signo porcentaje es un comentario %% y por lo tanto no tiene efecto ni es interpretada por joe. %% (Elimina dicho signo para activar una función) % Este archivo se divide en varias secciones. La primer sección % consiste las asignaciones de teclas (ej, Wordstar, Emacs, EDT, % etc...) y las secciones siguientes corresponden a las preferencias % de usuario (como tamaño de tabulaciones por defecto, números de % línea y columna en la línea de status, colores, estilo de indentado, % etc...). if (BATCH == 0) { %---------------------------------------------------------------------- % Asignaciones de Teclas (no se usan en el modo proceso en lotes). % % Las asignaciones de teclas en Unix y VMS es estilo Emacs con % emulación ET. Para PC sólo se activa por defecto Emacs. Si no % desea las asignaciones tipo EDT, simplemente descomente la línea % apropiada. % % Para asignaciones de teclas similares a Wordstar, comente las % líneas EDT y Emacs y descomente la línea Worstar. Una declaración % similar aplica para BRIEF, y para las asignacionesa similares a % Borland IDE. % % () = evalfile("emacs"); % Asignaciones tipo Emacs % () = evalfile("edt"); % Emulación EDT % () = evalfile ("ide"); % Borland IDE (ver doc/ide-mode.txt) % () = evalfile ("brief"); % Asignaciones Brief (sólo en MSDOS!!) % () = evalfile("wordstar"); % obsoleto --- usar ide en su lugar) % () = evalfile ("cua"); % CUA-like key bindings % Nota: Para usar emulación EDT, jed386.exe requiere cargar el TSR GOLD.COM % Este TSR se encuentra en space.mit.edu:/pub/davis/jed. % Algunas de las emulaciones superiores pueden entrar en conflicto con % la tecla de acceso a las barras de menú. Por ejemplo, emacs usa ESC-f % para moverse a palabras. La siguiente línea provoca que las teclas % activen los menús. Comente la siguiente línea para preservar la % emulación: enable_menu_keys (); % Si usa jed dentro de xterm, puede usar el mouse para acceder a los % menús y mover el cursor descomentando la siguiente línea: enable_xmouse (); % Qué debería hacer Ctrl-H?? % % setkey ("bol", "^H"); % ^H va al principio de línea (EDT) % setkey ("help_prefix", "^H"); % Descomentar para que Ctrl+H sea ayuda. #ifdef XWINDOWS % See xjed.txt for information regarding the delete key under X Windows. % x_set_keysym (0xFFFF, 0, "\e[3~"); % setkey ("delete_char_cmd", "\e[3~"); #endif % ATENCION: Problemas de control de flujo con ^S/^Q % Si experimenta problemas con que JED pasa a modo búsqueda por % alguna razón, entonces es víctima del atajo estilo Emacs de la % tecla ^S asignado a la función de b{usqueda. PARA IMPEDIR esto, o % descubra como impedir caracteres ^S/^Q no deseados, o descomente la % siguiente línea: #ifdef UNIX %enable_flow_control (1); #endif %---------------------------------------------------------------------- % Pantalla de ayuda inicial --- descomentar para desactivar. % Para que la pantalla de ayuda sea válida, debe ocurrir DESPUES de cargar % Los ajustes de teclas. % help(); % Presenta una ventana de ayuda } %Batch %%========== Barra superior de menu ===================== % Para activarla, descomente la siguiente línea (los menús estarán % disponibles pero la barra desaparecerá cuando no está en uso). enable_top_status_line (1); %--------------------------------------------------------------------------- % Información del Usuario (usado en algunos modos, determinada % automáticamente en Unix) %--------------------------------------------------------------------------- set_realname ("~fulana"); set_username ("fulana"); set_hostname ("texto-plano.xyz"); set_emailaddress ("fulana@texto-plano.xyz"); %---------------------------------------------------------------------- % Variables Globales de JED -- Se muestran aquellas por defecto. % #ifdef VMS UNIX %USE_ANSI_COLORS = 1; % Si no es cero, Jed mostrará colores en un terminal % color (sólo en Unix y VMS) ver doc/color.txt % para mas información y fíjese abajo para configurar % los colorcitos. #endif No_Backups = 1; % Si no es cero, no se crean archivos de respaldo. Startup_With_File = 1; % Mayor a cero fuerza a JED a preguntar un fichero % si no se especificó en la línea de comandos. % si es negativo, inhibe el mensaje de inicio. DISPLAY_TIME = -1; % no cero Mostrar hora activada en línea de status. % cero la desactiva. Si es -1 muestra hora en % formato 24H. HIGHLIGHT = 1; % no cero resalta región de texto. WANT_SYNTAX_HIGHLIGHT = 1; % Resalta sintaxis en modos C, Fortran, y TeX modes. % Ver sección Colores abajo para elegir como resaltar. % En Unix y VMS, también USE_ANSI_COLORS no debe ser % cero. HORIZONTAL_PAN = 20; % cero: sin paneo automático. Si es positivo: solo % panea la línea actual. Si es negativo, panea la % ventana. % #ifdef IBMPC_SYSTEM HORIZONTAL_PAN = -1; % Para msdos, panear ventana puede ser mejor: #endif #ifdef IBMPC_SYSTEM LINENUMBERS = 2; % 0 NO muestra números de línea nen la #else % línea de status. 1, muestra nro. de línea LINENUMBERS = 1; % Un valor mayor de 1 también muestra nro. de línea #endif % Recomiendo valor de 2 solo con baudios altos. BLINK = 1; % si no es cero, parpadea paréntesis correspondientes. TAB_DEFAULT = 4; % Tamaño de Tabulación (pruebe edit_tab_stops también) USE_TABS = 1; % Use tabulaciones cuando genera espacio en blanco. TAB = 4; Tab_Always_Inserts_Tab = 0; % Ponga esto en 1 si desea que la tecla Tab % inserte tabulaciones. _Jed_Default_Color_Scheme = "black3"; WRAP_DEFAULT = 72; % Columna de justificación ADD_NEWLINE = 1; % Agrega nueva línea al fichero cuando lo guarda si no % había una presente. IGNORE_BEEP = 3; % Beep de terminal durante mensajes de error--- % 1 == solo Beep, 2 = Solo campana visible, 3 = ambos _traceback = 0; % Non zero means dump traceback on S-Lang errors WRAP_INDENTS = 0; % No cero indenta siguiente linea luego de justificar % la línea actual. % Póngalo en 1 si desea modo de texto indentado. %KILL_LINE_FEATURE = 0; % Si no es cero, kill line borrará luego del % final de la línea si no hay punto al comienzo % de la línea. Para lograr un comportamiento % tipo Emacs, ponga esto en cero. %--------------------------------------------------------------------------- % Estilo de Indentado en Modo C %--------------------------------------------------------------------------- c_set_style ("linux"); % o "linux", "gnu", "bsd", "k&r" #ifdef IBMPC_SYSTEM % Si no es cero, trata los nombres de archivo como sensibles a mayúsulas. Case_Sensitive_Filenames = 1; #endif %--------------------------------------------------------------------------- #ifdef MSDOS XWINDOWS MSWINDOWS % Funcionamiento de la tecla Alt. Configurar esta variable controla % como se maneja la tecla Alt. Por defecto se la configura como 27 % (Escape ASCII). Esto signisfica que cualquier tecla presionada en % conjunto con la tecla Alt produce Escape seguido por la tecla en sí. % Si se presiona Alt+x, se genera Esc+x. Configurela en cero para hacer % que el bit alto se ponga en el caracter. %ALT_CHAR = 27; #endif % Teclas mudas (muertas o acento) % Las teclas Mudas válidas son: % ^, ~, ', `, \d168 (ISO Diaeresis), \d180 (ISO Acute), y \". % Esto significa presionar esta tecla y luego la tecla que decea % acentuar para generar el caracter acentuado. Si no sabe qué hacer % con esto, no lo necesita. Por defecto, están apagadas. %mute_set_mute_keys (" ^ ~ ' ` \d168 \d180 \" "); % elije todas o un % subconjunto. META_CHAR = -1; % Todos los caracteres con un bit alto se autoinsertan. #ifdef IBMPC_SYSTEM % DISPLAY_EIGHT_BIT = 128; #else % DISPLAY_EIGHT_BIT = 160; % Otros sistemas asumen ISO Latin 1 #endif % Configuración de color. % Ver en jed/lib/colors/README una descripción de los esquemas predefinidos. %set_color_scheme ("black3"); %set_color_scheme ("blue2"); #ifdef UNIX % % Tipo de Terminal. Por defecto, se usa Unix termcap. Sin embargo, % algunos (si no todos) los termcaps no incluyen cadenas AL, DL para % las terminales DEC VTxxx. % % Las terminales VT100 verdaderas no pueden insertar y borrar líneas, % de modo que las entradas AL y DL de termcap no resultan apropiadas % para ellas. Sin embargo, casi nadie usa un terminal VT100 verdadero % hoy en día, sino que configuran su variable TERM para VT100. Si no le % gusta la manera en la que se desplaza su terminal, o tiene un modelo % más avanzado que una VT100, o configure su variable TERM a una % terminal apropiada, o agregue vt100 al listado de abajo. % if (0) { $1 = "vt102 vt200 vt220 vt300 vt320 vt420 xterms"; if (is_substr($1, getenv("TERM"))) set_term_vtxxx(0); } #endif % Interfaz del compilador --- descomentar uno de los siguientes % % variable Compile_Default_Compiler = "gcc"; % GNU compiler % variable Compile_Default_Compiler = "Ultrix_cc"; % cc on Ultrix % variable Compile_Default_Compiler = "bcc"; % Borlands BCC % variable Compile_Default_Compiler = "sun_acc"; % SunOS C++ and ACC % variable Compile_Default_Compiler = "hp_cc"; % HPUX cc #ifdef WIN32 variable W32shell_Perform_Globbing = 0; #endif % % Hooks: leer jed/doc/hooks.sl para mayor información % define global_mode_hook (hook_name) { % if (hook_name != "c_mode_hook") % local_setkey ("self_insert_cmd", "\t"); } define dired_hook () { %local_unsetkey ("^K"); %local_setkey ("dired_kill_line", "^K"); } %% ================= "estilo Emacs" definido por peron ===================== () = evalfile("emacs"); enable_top_status_line(0); auto_compression_mode(1); unsetkey("\ef"); setkey("skip_word", "\ef"); unsetkey("\eb"); setkey("bskip_word", "\eb"); unsetkey("\ee"); setkey("eol_cmd", "\ee"); unsetkey("\ea"); setkey("beg_of_line", "\ea"); unsetkey("\ei"); unsetkey("\es"); unsetkey("\eu"); unsetkey("^H"); unsetkey("`"); setkey("self_insert_cmd", "`"); unsetkey("^K"); setkey("push_spot();bol();push_mark();down_1();yp_copy_region_as_kill();pop_spot();delete_line();", "^K"); %setkey("bol();if(eolp()==0)emacs_yp_kill_line();emacs_yp_kill_line();", "^K"); unsetkey("^J"); setkey("emacs_yp_kill_line();", "^J"); unsetkey("^V"); setkey("yp_yank();", "^V"); setkey("beg_of_line", "\eOH"); setkey("eol_cmd", "\eOF"); setkey("bufed()", "^Z"); setkey("dired()", "^X^Z"); setkey("smart_set_mark_cmd", "^Q"); setkey("one_window", "\el"); define backspaces () { variable n; n = TAB_DEFAULT; loop (n) { n--; if (what_column() - 1 > 0) call("backward_delete_char_untabify"); } } setkey ("backspaces()", "^H"); define my_indent_region_or_line(dir) { variable col = 0; variable end_block = 0; !if(is_visible_mark()) { bol_skip_white(); col = what_column() - 1; bol_trim (); whitespace( col + dir * TAB_DEFAULT ); return; } % narrow() no funciona, ya que indent_line() necesita el contexto! check_region(0); % asegura que la marca venta primero variable end_line = what_line(); dupmark(); pop_mark_1(); % go there loop (end_line - what_line() + 1) { bol_skip_white(); col = what_column() - 1; bol_trim (); whitespace( col + dir * TAB_DEFAULT ); go_down_1(); } push_spot(); pop_mark_1(); push_visible_mark(); pop_spot(); go_up_1(); } setkey ("my_indent_region_or_line(1)", "^I"); setkey ("my_indent_region_or_line(-1)", "^U"); setkey ("insert_char('\t')", "\ei"); setkey ("my_indent_region_or_line(1)", "^]"); %setkey ("my_indent_region_or_line(-1)", "^("); % % Conmuta al buffer previo o siguiente % Este código se originó en ide_next_buffer() en ide.sl. % define next_buffer (previous) { variable n, buf; n = buffer_list (); % obtiene los buffers en la pila if (previous) { _stk_reverse (n-1); } loop (n) { buf = (); n--; % Saltea *scratch* y otros buffers que no sean de interés. if ((buf[0] == '*') or (buf[0] == ' ')) { continue; } sw2buf (buf); _pop_n (n); return; } } % Bind Alt-. and Alt-, (Meta-period and Meta-comma) to next_buffer(). setkey ("next_buffer (0)", "\eq"); %setkey ("next_buffer (1)", "\ea"); %% ==================================== autoload("get_word", "txtutils"); define search_current_word(direction) { variable word; variable mark; variable result; variable s1; mark = create_user_mark(); skip_word(); bskip_word(); word = get_word(); if (direction == 1) { while (1) { go_right_1(); result = fsearch(word); if (result == 0) { break; } % Busca de nuevo si la palabra es una subcadena de una palabra % mas larga. s1 = get_word(); !if (strcmp(s1, word)) { break; } } } else { while (1) { result = bsearch(word); if (result == 0) { break; } % Busca de nuevo si la palabra es una subcadena de una palabra % mas larga. s1 = get_word(); !if (strcmp(s1, word)) { break; } } } if (result == 0) { goto_user_mark(mark); message(word + " not found"); } } % Asigna Alt-z+Alt-coma (alt-z y luego alt-comma) y Alt-z+Alt-punto. setkey ("search_current_word(-1)", "\e&"); setkey ("search_current_word(1)", "\e*"); define_word("_A-Za-z0-9"); %% ==================================== autoload("yp_copy_region_as_kill", "yankpop"); autoload("mark_word", "txtutils"); define copy_word_as_kill() { variable s1; push_spot(); mark_word(); () = dupmark(); s1 = bufsubstr(); yp_copy_region_as_kill(); pop_spot(); message("\"" + s1 + "\" copied to kill ring"); } define copy_line_as_kill() { variable s1; push_spot(); bol(); set_mark_cmd(); down(1); yp_copy_region_as_kill(); pop_spot(); message("line copied to kill ring"); } define duplicate_line() { variable col; push_spot(); col = what_column(); bol(); push_mark(); down_1(); yp_copy_region_as_kill(); yp_yank(); pop_spot(); down_1(); goto_column(col); } unsetkey("\ec"); setkey ("copy_word_as_kill()", "\ecw"); setkey ("copy_line_as_kill()", "\ecl"); setkey("duplicate_line", "\ecd");
