Home
Search
Reference Manuals
Return
! Preferences file for NEdit
! (User settings in X "application defaults" format)
!
! This file is overwritten by the "Save Defaults..." command in NEdit
! and serves only the interactively settable options presented in the NEdit
! "Preferences" menu. To modify other options, such as key bindings, use
! the .Xdefaults file in your home directory (or the X resource
! specification method appropriate to your system). The contents of this
! file can be moved into an X resource file, but since resources in this file
! override their corresponding X resources, either this file should be
! deleted or individual resource lines in the file should be deleted for the
! moved lines to take effect.
nedit.fileVersion: 5.6
nedit.shellCommands: \
open_selected:Alt+O:o:ID:\n\
file=`cat`; file=`eval echo $file`; if [ -f $file ];then op -q -t $file; elif [ -f ../$file ];then op -q ../$file; elif [ -f ../../$file ];then op -q ../../$file; elif [ -f ../vhedat/$file.ins ];then op -q ../vhedat/$file.ins; elif [ -f $gensys/calc/insert_files/$file.ins ];then op -q $gensys/calc/insert_files/$file.ins; elif [ -f $file.f95 ];then op -q $file.f95; elif [ -f $file.f ];then op -q $file.f; elif [ -f $file.c ];then op -q $file.c; elif [ -f $file.m ];then op -q $file.m; else echo "File: $file non-existent"; fi \n\
\
GENSYS>UsersManual_select:Alt+U:u:ID:\n\
file=%; selection=`cat`; file=`eval echo $file`; selection=`eval echo $selection`; prog=`echo $file|sed -r "s/.*\\.([^.]*)/\\1/"`; prog=`echo $prog|sed -r "s/f$//"`; um $prog $selection \n\
\
GENSYS>Run Current File Execute current file with associated program::::\n\
genrun_KDE %\n\
GENSYS>Show Association Show program associated with current file::::\n\
genasso %\n\
\
GENSYS>Calc Commands>body>box_mass Defines a box shape body, the shape is described relative to c.g.::::\n\
echo " body box_mass bname a0 a1 b0 b1 h0 h1"\n\
GENSYS>Calc Commands>body>box_mass_522 As in BOX_MASS, but can animate flexible modes::::\n\
echo " body box_mass_522 bname a0 a1 b0 b1 h0 h1"\n\
GENSYS>Calc Commands>body>box_mass_733 As in BOX_LSYS_733, but the shape is described relative to the center of gravity of the mass::::\n\
echo " body box_mass_733 bname a111 b111 h111 a113 b113 h113 a131 b131 h131 a133 b133 h133 a711 b711 h711 a713 b713 h713 a731 b731 h731 a733 b733 h733"\n\
GENSYS>Calc Commands>body>car_mass_522 Similar to BOX_MASS_522 but end a0 of the box is shaped like a front of railway a vehicle::::\n\
echo " body car_mass_522 bname a0 a1 b0 b1 h0 h1"\n\
GENSYS>Calc Commands>body>cylx_mass Defines a cylindrical shaped body, the shape is described relative to the center of gravity of the mass::::\n\
echo " body cylx_mass bname radius height"\n\
GENSYS>Calc Commands>body>figure_mass Defines an arbitrary shaped body, the shape is described relative to the center of gravity of the mass::::\n\
echo " body figure_mass bname Npolygons Npoints1 point11(1:3) point12(1:3),,, Npoints2 point21(1:3) point22(1:3),,, . . . . . . . ."\n\
GENSYS>Calc Commands>body>whe_set_mass Defines a wheelset shaped body, the shape is described relative to c.g.::::\n\
echo " body whe_set_mass bname ro bo"\n\
GENSYS>Calc Commands>body>opengl_mass Defines a geometric primitive according to OpenGL, the shape is described relative to the center of gravity of the mass::::\n\
echo " body opengl_mass bname Red Green Blue Alpha Primitive Nnodes Coords(1:3,1:Nnodes) Normals(1:3,1:Nnodes)"\n\
GENSYS>Calc Commands>body>opengl2_mass Defines geometric figures consisting of several OpenGL geometric primitives, the shape is described relative to the center of gravity of the mass::::\n\
echo " body opengl2_mass bname Red Green Blue Alpha Primitive Input_data"\n\
\
GENSYS>Calc Commands>constr>conn_body_fm Transfers forces and moments from body m_constr to body m_conn::::\n\
echo " constr conn_body_fm m_constr m_conn directions"\n\
GENSYS>Calc Commands>constr>conn_free_1 Linear elimination of a equation::::\n\
echo " constr conn_free_1 cr_name fact1 y_name1 fact2 y_name2 fact3,,"\n\
GENSYS>Calc Commands>constr>fix_free_1 Set an equation to a constant value::::\n\
echo " constr fix_free_1 cr_name value"\n\
GENSYS>Calc Commands>constr>fix_rigid_1 Set a degree of freedom to a constant value::::\n\
echo " constr fix_rigid_1 cr_name dire value"\n\
GENSYS>Calc Commands>constr>fix_rigid_2 Set a degree of freedom equal to a variable::::\n\
echo " constr fix_rigid_1 cr_name dire value"\n\
\
GENSYS>Calc Commands>coupl>properties>p_lin Defines a linear coupling property::::\n\
echo " coupl p_lin p_name= F0 v1"\n\
GENSYS>Calc Commands>coupl>properties>p_lin36 Defines a linear 6x6-matrix property::::\n\
cat $genverif/main/calc/nedit_modelling/coupl-p_lin36.propf \n\
GENSYS>Calc Commands>coupl>properties>p_lin144 Defines a linear 12x12-matrix property::::\n\
cat $genverif/main/calc/nedit_modelling/coupl-p_lin144.propf \n\
GENSYS>Calc Commands>coupl>properties>p_nlin Defines a non-linear property::::\n\
cat $genverif/main/calc/nedit_modelling/coupl-p_nlin.propf \n\
GENSYS>Calc Commands>coupl>properties>p_nlin_s Defines an asymmetric non-linear property::::\n\
cat $genverif/main/calc/nedit_modelling/coupl-p_nlin_s.propf \n\
GENSYS>Calc Commands>coupl>properties>p_nlin_t Defines a non-linear property given by tangential values::::\n\
cat $genverif/main/calc/nedit_modelling/coupl-p_nlin_t.propf \n\
GENSYS>Calc Commands>coupl>properties>p_nlin_st Defines an asymmetric non-linear property given by tangential values::::\n\
cat $genverif/main/calc/nedit_modelling/coupl-p_nlin_st.propf \n\
GENSYS>Calc Commands>coupl>properties>p_kfrkc Property designed for coupling kfrkc::::\n\
cat $genverif/main/calc/nedit_modelling/coupl-p_kfrkc.propf \n\
\
GENSYS>Calc Commands>coupl>dampers>c Viscous damper::::\n\
echo " coupl c c_name body1 a1 b1 h1 body2 a2 b2 h2 property esys dire"\n\
GENSYS>Calc Commands>coupl>dampers>c_l Viscous damper, rotated a small angle::::\n\
echo " coupl c_l c_name body1 a1 b1 h1 body2 a2 b2 h2 property esys dire fi chi psi"\n\
GENSYS>Calc Commands>coupl>dampers>c_r Viscous damper, rotated a large angle::::\n\
echo " coupl c_r c_name body1 a1 b1 h1 body2 a2 b2 h2 property esys dire fi chi psi"\n\
GENSYS>Calc Commands>coupl>dampers>c_vs_d Displacement-controlled viscous damper::::\n\
echo " coupl c_vs_d c_name body1 a1 b1 h1 body2 a2 b2 h2 property esys dire"\n\
GENSYS>Calc Commands>coupl>dampers>kc Viscous damper with series stiffness::::\n\
echo " coupl kc c_name body1 a1 b1 h1 body2 a2 b2 h2 prop_k prop_c esys dire"\n\
GENSYS>Calc Commands>coupl>dampers>kckc Two units of dampers and springs in series::::\n\
echo " coupl kckc c_name body1 a1 b1 h1 body2 a2 b2 h2 prop_k1 prop_c1 prop_k2 prop_c2 esys dire"\n\
GENSYS>Calc Commands>coupl>dampers>kf One-dimensional friction damper::::\n\
echo " coupl kf c_name body1 a1 b1 h1 body2 a2 b2 h2 prop_k Ffr0 esys dire"\n\
GENSYS>Calc Commands>coupl>dampers>kf2 Two-dimensional friction damper::::\n\
echo " coupl kf2 c_name body1 a1 b1 h1 body2 a2 b2 h2 prop_k1 prop_k2 Ffr0 esys dire1 dire2"\n\
GENSYS>Calc Commands>coupl>dampers>kf3 Three-dimensional friction damper::::\n\
echo " coupl kf3 c_name body1 a1 b1 h1 body2 a2 b2 h2 prop_k1 prop_k2 prop_k3 Ffr0 esys dire1 dire2 dire3"\n\
GENSYS>Calc Commands>coupl>dampers>creep_fasim_1 Rolling contact between two surfaces::::\n\
echo " coupl creep_fasim_1 c_name body1 a1 b1 h1 body2 a2 b2 h2";\
echo " tral.y tral.z tral.vy tral.vz";\
echo " mulfact_nux mulfact_nuy mulfact_spin";\
echo " zfn drfn gamfn rofn poswfn posrfn";\
echo " knwr.F0 knwr cnwr ";\
echo " G_modulus mu ro";\
echo " poisson mgitr ngitr"\n\
GENSYS>Calc Commands>coupl>dampers>creep_lookuptable_1 Rolling contact between two surfaces::::\n\
echo " coupl creep_lookuptable_1 c_name body1 a1 b1 h1 body2 a2 b2 h2";\
echo " tral.y tral.z tral.vy tral.vz";\
echo " mulfact_nux mulfact_nuy mulfact_spin";\
echo " zfn drfn gamfn rofn poswfn posrfn";\
echo " knwr.F0 knwr cnwr ";\
echo " E_modulus poisson mu ro"\n\
GENSYS>Calc Commands>coupl>dampers>creep_tanel_springs_1 Rolling contact between two surfaces::::\n\
echo " coupl creep_tanel_springs_1 c_name body1 a1 b1 h1 body2 a2 b2 h2";\
echo " esys m tral.y tral.z tral.vy tral.vz";\
echo " ro iorient mu";\
echo " mulfact_nux mulfact_nuy mulfact_spin";\
echo " kz_winkler kz_tanel_1";\
echo " kx_fastsim kx_tanel_1 kx_tanel_2";\
echo " ky_fastsim ky_tanel_1 ky_tanel_2";\
echo " cz_winkler";\
echo " wheel_prof nl_brush xl_brush rail_prof"\n\
\
GENSYS>Calc Commands>coupl>stiffness>k, k_preZ Elasitic stiffness::::\n\
echo " coupl k c_name body1 a1 b1 h1 body2 a2 b2 h2 property esys dire"\n\
GENSYS>Calc Commands>coupl>stiffness>k_l, k_l_preZ Elasitic stiffness, rotated a small angle::::\n\
echo " coupl k_l c_name body1 a1 b1 h1 body2 a2 b2 h2 property esys dire fi chi psi"\n\
GENSYS>Calc Commands>coupl>stiffness>k_r, k_r_preZ Elasitic stiffness, rotated a large angle::::\n\
echo " coupl k_r c_name body1 a1 b1 h1 body2 a2 b2 h2 property esys dire fi chi psi"\n\
GENSYS>Calc Commands>coupl>stiffness>k3, k3_preZ Vertical coil spring::::\n\
echo " coupl k3 c_name body1 a1 b1 h1 body2 a2 b2 h2 property_x property_y property_z h rf esys dire"\n\
GENSYS>Calc Commands>coupl>stiffness>k3_l, k3_._preZ Vertical coil spring, rotated a small angle::::\n\
echo " coupl k3_l c_name body1 a1 b1 h1 body2 a2 b2 h2 property_x property_y property_z h rf esys dire fi chi psi"\n\
GENSYS>Calc Commands>coupl>stiffness>k3_r, k3_r_preZ Vertical coil spring, rotated a large angle::::\n\
echo " coupl k3_r c_name body1 a1 b1 h1 body2 a2 b2 h2 property_x property_y property_z h rf esys dire fi chi psi"\n\
GENSYS>Calc Commands>coupl>stiffness>k_air3 Airbag, measured properties ::::\n\
echo " coupl k_air3 c_name body1 a1 b1 h1 body2 a2 b2 h2";\
echo " esys dire";\
echo " prop_kex kexki prop_key keyfi prop_kez";\
echo " ffxmax x2 ffzmax z2";\
echo " kvx cx kvz czb beta m"\n\
GENSYS>Calc Commands>coupl>stiffness>k_air3_exp Airbag, measured properties, exponentially declining friction::::\n\
echo " coupl k_air3_exp c_name body1 a1 b1 h1 body2 a2 b2 h2";\
echo " esys dire";\
echo " prop_kex kexki prop_key keyfi prop_kez";\
echo " ffxmax x2 ffzmax z2";\
echo " kvx cx kvz czb beta m"\n\
GENSYS>Calc Commands>coupl>stiffness>k_air3_mawa Airbag, using equations for viscous flow::::\n\
echo " coupl k_air3_mawa c_name body1 a1 b1 h1 body2 a2 b2 h2";\
echo " esys dire";\
echo " Temp Fnom Faw0 Vaw0 Aaw0 Vaux";\
echo " Lpipe dpipe rpipe";\
echo " dorif Kloss Fzfric z2fric kbag kauxp cauxp";\
echo " prop_kex kexki prop_key keyfi";\
echo " cy kcy Fyfric y2fric"\n\
GENSYS>Calc Commands>coupl>stiffness>kckc Two units of dampers and springs in series::::\n\
echo " coupl kckc c_name body1 a1 b1 h1 body2 a2 b2 h2 prop_k1 prop_c1 prop_k2 prop_c2 esys dire"\n\
GENSYS>Calc Commands>coupl>stiffness>kfrkc Rubber spring with different static and dynamic stiffness::::\n\
echo " coupl kfrkc c_name body1 a1 b1 h1 body2 a2 b2 h2 p_kfrkc esys dire"\n\
GENSYS>Calc Commands>coupl>stiffness>kf_exp1 Leaf spring with exponentially declining friction::::\n\
echo " coupl kf_exp1 c_name body1 a1 b1 h1 body2 a2 b2 h2 esys dire Fu ku Fl kl dFA dFB"\n\
GENSYS>Calc Commands>coupl>stiffness>km Similar to coupl 'k', but the user can control the generated moments from the spring::::\n\
echo " coupl km c_name body1 a1 b1 h1 body2 a2 b2 h2 property esys dire conn1 conn2"\n\
GENSYS>Calc Commands>coupl>stiffness>km_l Similar to coupl 'k_l', but the user can control the generated moments from the spring::::\n\
echo " coupl km_l c_name body1 a1 b1 h1 body2 a2 b2 h2 property esys dire fi chi psi conn1 conn2"\n\
GENSYS>Calc Commands>coupl>stiffness>km_r Similar to coupl 'k_r', but the user can control the generated moments from the spring::::\n\
echo " coupl km_r c_name body1 a1 b1 h1 body2 a2 b2 h2 property esys dire fi chi psi conn1 conn2"\n\
GENSYS>Calc Commands>coupl>stiffness>derailm_1 Contact surface element between two bodies::::\n\
echo " coupl derailm_1 c_name body1 a1 b1 h1 body2 a2 b2 h2 esys";\
echo " stiffy stiffz dampny dampnz mu_x";\
echo " body1_y1 body1_y2 body1_z1";\
echo " body2_y1 body2_y2 body2_y3 body2_y4 body2_y5 body2_y6";\
echo " body2_z1 body2_z2 body2_z3 body2_z4 body2_z5"\n\
GENSYS>Calc Commands>coupl>stiffness>derailm_2 Contact surface element between two bodies::::\n\
echo " coupl derailm_2 c_name body1 a1 b1 h1 body2 a2 b2 h2 esys";\
echo " stiffy stiffz dampny dampnz defmaxy defmaxz mu_x";\
echo " Start_Dir_Surf1 c1 (+|-) d1 (+|-) c2 , , , End1 dn";\
echo " Start_Dir_Surf2 C1 (+|-) D1 (+|-) C2 , , , End2 Dn"\n\
\
GENSYS>Calc Commands>force>rel_lsys1 External force relative to a lsys::::\n\
echo " force rel_lsys1 fo_name m_name a b h Fx Fy Fz Mf Mk Mp"\n\
GENSYS>Calc Commands>force>rel_mass1 External force relative to a mass::::\n\
echo " force rel_mass1 fo_name m_name a b h Fx Fy Fz Mf Mk Mp"\n\
\
GENSYS>Calc Commands>func>a-g>abs The absolute value function::::\n\
echo " func abs f_name= var ## The absolute value function"\n\
GENSYS>Calc Commands>func>a-g>accp_bodyf Body-fixed accelerations from forces acting on the mass::::\n\
echo " func accp_bodyf f_name= mass Rp(1:3) ## Body-fixed accelerations from forces acting on the mass"\n\
GENSYS>Calc Commands>func>a-g>accp_bodyf0 Body-fixed accelerations from forces acting on the mass::::\n\
echo " func accp_bodyf0 f_name= mass Rp(1:3) ## Body-fixed accelerations from forces acting on the mass"\n\
GENSYS>Calc Commands>func>a-g>accp_bodyfix Body-fixed accelerations by derivating the speed of the mass::::\n\
echo " func accp_bodyfix f_name= mass Rp(1:3) ## Body-fixed accelerations by derivating the speed of the mass"\n\
GENSYS>Calc Commands>func>a-g>acos The inverse cosinus function::::\n\
echo " func acos f_name= var ## The inverse cosinus function"\n\
GENSYS>Calc Commands>func>a-g>add Addition::::\n\
echo " func add f_name= var1 var2 ## Addition"\n\
GENSYS>Calc Commands>func>a-g>asin The inverse sinus function::::\n\
echo " func asin f_name= var ## The inverse sinus function"\n\
GENSYS>Calc Commands>func>a-g>atan The inverse tangent function::::\n\
echo " func atan f_name= var ## The inverse tangent function"\n\
GENSYS>Calc Commands>func>a-g>cabs The complex absolute value function::::\n\
echo " func cabs f_name= var1 var2 ## The complex absolute value function"\n\
GENSYS>Calc Commands>func>a-g>char Character constant::::\n\
echo " func char f_name= fchar ## Character constant"\n\
GENSYS>Calc Commands>func>a-g>command Co-simulation with another program::::\n\
echo " func command f_name= command arg1 arg2 arg3,,, etc. ## Co-simulation with another program"\n\
GENSYS>Calc Commands>func>a-g>const Create a constant::::\n\
echo " func const f_name= value"\n\
GENSYS>Calc Commands>func>a-g>const_block Create many constants ::::\n\
echo " func const_block";\
echo " f_name_1= value_1";\
echo " f_name_2= value_2";\
echo " . . ";\
echo " . . ";\
echo " f_name_n= value_n";\
echo " end_block"\n\
GENSYS>Calc Commands>func>a-g>cos The cosinus function::::\n\
echo " func cos f_name= var ## The cosinus function"\n\
GENSYS>Calc Commands>func>a-g>cr_mem Create a memory field::::\n\
echo " func cr_mem f_name= npoints var1 ## Create a memory field"\n\
GENSYS>Calc Commands>func>a-g>create_l Linear interpolation in a memory field::::\n\
echo " func create_l f_name= r_name var ## Linear interpolation in a memory field"\n\
GENSYS>Calc Commands>func>a-g>create2_l Linear interpolation in a super memory field::::\n\
echo " func create2_l f_name= r2_name xvar yvar ## Linear interpolation in a super memory field"\n\
GENSYS>Calc Commands>func>a-g>create_spline Spline interpolation in a memory field::::\n\
echo " func create_spline f_name= r_name var ## Spline interpolation in a memory field"\n\
GENSYS>Calc Commands>func>a-g>create_splined Spline interpolate the first derivative::::\n\
echo " func create_splined f_name= r_name var ## Spline interpolate the first derivative"\n\
GENSYS>Calc Commands>func>a-g>decr Decrease the value of a variable::::\n\
echo " func decr f_name= var ## Decrease the value of a variable"\n\
GENSYS>Calc Commands>func>a-g>deriv Calculate the derivative of a variable::::\n\
echo " func deriv f_name= var ## Calculate the derivative of a variable"\n\
GENSYS>Calc Commands>func>a-g>discrete Discretization at desired time steps, simulate an AD-converter::::\n\
echo " func discrete f_name= in_var t_discr ## Discretization at desired time steps, simulate an AD-converter"\n\
GENSYS>Calc Commands>func>a-g>div Division ::::\n\
echo " func div f_name= var1 var2 ## Division"\n\
GENSYS>Calc Commands>func>a-g>fifo_mem Create a fifo memory field with time as x-variable::::\n\
echo " func fifo_mem f_name= var npmax tout ## Create a fifo memory field with time as x-variable"\n\
GENSYS>Calc Commands>func>a-g>fifo_mem2 Create a fifo memory field with arbitrary x-variable::::\n\
echo " func fifo_mem2 f_name= var npmax tout tvar ## Create a fifo memory field with arbitrary x-variable"\n\
\
GENSYS>Calc Commands>func>h-m>hpass1 First order high pass filter, start value same as input variable::::\n\
echo " func hpass1 f_name= y_name Fgr ## First order high pass filter, start value same as input variable"\n\
GENSYS>Calc Commands>func>h-m>hpass1_0 First order high pass filter, start value equal to 0(zero)::::\n\
echo " func hpass1_0 f_name= y_name Fgr ## First order high pass filter, start value equal to 0(zero)"\n\
GENSYS>Calc Commands>func>h-m>hpass2 Second order high pass filter, start value same as input variable::::\n\
echo " func hpass2 f_name= y_name Fgr set ## Second order high pass filter, start value same as input variable"\n\
GENSYS>Calc Commands>func>h-m>hpass2_0 Second order high pass filter, start value equal to 0(zero)::::\n\
echo " func hpass2_0 f_name= y_name Fgr set ## Second order high pass filter, start value equal to 0(zero)"\n\
GENSYS>Calc Commands>func>h-m>incr Increase the value of a variable::::\n\
echo " func incr f_name= var ## Increase the value of a variable"\n\
GENSYS>Calc Commands>func>h-m>int The truncation function::::\n\
echo " func int f_name= var ## The truncation function"\n\
GENSYS>Calc Commands>func>h-m>integ The integration function::::\n\
echo " func integ f_name= var ## The integration function"\n\
GENSYS>Calc Commands>func>h-m>intpl_l Direct linear interpolation::::\n\
echo " func intpl_l f_name= var x1 y1 x2 y2 x3 ,,, ## Direct linear interpolation"\n\
GENSYS>Calc Commands>func>h-m>intpl_r Store a memory field::::\n\
echo " func intpl_r f_name= x1 y1 x2 y2 x3 ,,, ## Store a memory field"\n\
GENSYS>Calc Commands>func>h-m>intpl2_r Store a super memory field::::\n\
echo " func intpl2_r f_name= x1 field1 x2 field2 x3,,, ## Store a super memory field"\n\
GENSYS>Calc Commands>func>h-m>intpl_s Direct spline interpolation::::\n\
echo " func intpl_s f_name= var x1 y1 x2 y2 x3,,, ## Direct spline interpolation"\n\
GENSYS>Calc Commands>func>h-m>intpl_track_irr2 Read track irregularity data excluding designed track curvature::::\n\
echo "";\
echo "####";\
echo "#### Read track irregularity data excluding designed track curvature";\
echo "#### ---------------------------------------------------------------";\
echo " func intpl_track_irr2 xstart xstop file gauge_ends "\n\
GENSYS>Calc Commands>func>h-m>intpl_track_irr3 Read track irregularity data including designed track curvature::::\n\
echo "";\
echo "####";\
echo "#### Read track irregularity data including designed track curvature";\
echo "#### ---------------------------------------------------------------";\
echo " func intpl_track_irr3 xstart xstop file gauge_ends ro_design fi_design z_design"\n\
GENSYS>Calc Commands>func>h-m>inv The inversion function::::\n\
echo " func inv f_name= var ## The inversion function"\n\
GENSYS>Calc Commands>func>h-m>kpf_variable_1 Create a varying wheel/rail-geometry function::::\n\
echo " func kpf_variable_1 id_no Xcoord_1 kpf_func_1 Xcoord_2 kpf_func_2 Xcoord_3,,, etc."\n\
GENSYS>Calc Commands>func>h-m>l_lim Limits a variable downwards::::\n\
echo " func l_lim f_name= var ## Limits a variable downwards"\n\
GENSYS>Calc Commands>func>h-m>lpass1 First order low pass filter, start value same as input variable::::\n\
echo " func lpass1 f_name= y_name Fgr ## First order low pass filter, start value same as input variable"\n\
GENSYS>Calc Commands>func>h-m>lpass1_0 First order low pass filter, start value equal to 0(zero)::::\n\
echo " func lpass1_0 f_name= y_name Fgr ## First order low pass filter, start value equal to 0(zero)"\n\
GENSYS>Calc Commands>func>h-m>lpass2 Second order low pass filter, start value same as input variable::::\n\
echo " func lpass2 f_name= y_name Fgr set ## Second order low pass filter, start value same as input variable"\n\
GENSYS>Calc Commands>func>h-m>lpass2_0 Second order low pass filter, start value equal to 0(zero)::::\n\
echo " func lpass2_0 f_name= y_name Fgr set ## Second order low pass filter, start value equal to 0(zero)"\n\
GENSYS>Calc Commands>func>h-m>lpass2q Same as lpass2 but faster execution::::\n\
echo " func lpass2q f_name= y_name Fgr set ## Second order low pass filter, start value same as input variable"\n\
GENSYS>Calc Commands>func>h-m>lpass2q_0 Same as lpass2_0 but faster execution::::\n\
echo " func lpass2q_0 f_name= y_name Fgr set ## Second order low pass filter, start value equal to 0(zero)"\n\
GENSYS>Calc Commands>func>h-m>max2 Calculate the max. value of two variables::::\n\
echo " func max2 f_name= var1 var2 ## Calculate the max. value of two variables"\n\
GENSYS>Calc Commands>func>h-m>mean_r Calculate the average value of a memory field::::\n\
echo " func mean_r x_mean,y_mean= field ## Calculate the average value of a memory field"\n\
GENSYS>Calc Commands>func>h-m>mean_r2 Calculate the average value of a memory field, with range selection::::\n\
echo " func mean_r2 x_mean,y_mean= field x_start x_stop ## Calculate the average value of a memory field, with range selection"\n\
GENSYS>Calc Commands>func>h-m>min2 Calculate the min. value of two variables::::\n\
echo " func min2 f_name= var1 var2 ## Calculate the min. value of two variables"\n\
GENSYS>Calc Commands>func>h-m>min_r Extract the min-values from a memory field::::\n\
echo " func min_r x_min,y_min= field ## Extract the min-values from a memory field"\n\
GENSYS>Calc Commands>func>h-m>min_r2 Extract the min-values from a memory field, with range selection::::\n\
echo " func min_r2 x_min,y_min= field x_start x_stop ## Extract the min-values from a memory field, with range selection"\n\
GENSYS>Calc Commands>func>h-m>mod Calculates the remainder::::\n\
echo " func mod f_name= var1 var2 ## Calculates the remainder"\n\
GENSYS>Calc Commands>func>h-m>mul Multiplication::::\n\
echo " func mul f_name= var1 var2 ## Multiplication"\n\
\
GENSYS>Calc Commands>func>n-z>nint Nearest integer::::\n\
echo " func nint f_name= var ## Nearest integer"\n\
GENSYS>Calc Commands>func>n-z>operp Execute algebraic operations::::\n\
echo " func operp f_name= var1 oper1 var2 oper2 ..."\n\
GENSYS>Calc Commands>func>n-z>power The power function::::\n\
echo " func power f_name= var1 var2 ## The power function"\n\
GENSYS>Calc Commands>func>n-z>pos_rlsys1 Calculate the position of a point attached to a body::::\n\
echo " func pos_rlsys1 f_name= mass Rp(1:3) ## Calculate the position of a point attached to a body"\n\
GENSYS>Calc Commands>func>n-z>pos_rlsys2 Calculate the position expressed in another lsys::::\n\
echo " func pos_rlsys2 f_name= mass lsys Rp(1:3) ## Calculate the position expressed in another lsys"\n\
GENSYS>Calc Commands>func>n-z>preload_init Create a constant variable, which value is defined in the initial preload process::::\n\
echo " func preload_init f_name ## Create a constant variable, which value is defined in the initial preload process"\n\
\
GENSYS>Calc Commands>func>n-z>print_all Print the value of a variable to file in every time step::::\n\
echo " func print_all f_name filecode ## Print the value of a variable to file in every time step"\n\
GENSYS>Calc Commands>func>n-z>print_init Print the initial value of a variable to file::::\n\
echo " func print_init f_name filecode ## Print the initial value of a variable to file"\n\
GENSYS>Calc Commands>func>n-z>print_quasi Print the value of a variable to file after QUASI has found the quasistatic solution::::\n\
echo " func print_quasi f_name filecode ## Print the quasi static value to file"\n\
\
GENSYS>Calc Commands>func>n-z>print06_all Print the value of a variable in every time step to standard output::::\n\
echo " func print06_all f_name ## Print the value of a variable in every time step to standard output"\n\
GENSYS>Calc Commands>func>n-z>print06_init Print the initial value of a variable to standard output::::\n\
echo " func print06_init f_name ## Print the initial value of a variable to standard output"\n\
GENSYS>Calc Commands>func>n-z>print06_char_all Print the value of a character string in every time step to standard output::::\n\
echo " func print06_char_all text ## Print the value of a character string in every time step to standard output"\n\
GENSYS>Calc Commands>func>n-z>print06_char_init Print the initial value of a character string to standard output::::\n\
echo " func print06_char_init text ## Print the initial value of a character string to standard output"\n\
GENSYS>Calc Commands>func>n-z>print06_quasi Print the value of a variable after QUASI has found the quasistatic solution to standard output::::\n\
echo " func print06_quasi f_name ## Print the quasi static value to standard output"\n\
\
GENSYS>Calc Commands>func>n-z>rolling_fatigue_1 Calculate fatigue index for rolling contact environments::::\n\
echo " func rolling_fatigue_1 f_name= wheel Yield_stress_in_shear Dang_Van_mtrl_param Residual_stress";\
echo " Contact_angle_limit Contact_force_llim"\n\
GENSYS>Calc Commands>func>n-z>rolling_fatigue_2 Fatigue index with wear limit::::\n\
echo " func rolling_fatigue_2 f_name= wheel Yield_stress_in_shear Dang_Van_mtrl_param"\
echo " Residual_stress Wear_limit Contact_force_llim"\n\
GENSYS>Calc Commands>func>n-z>sign2 Transfer of sign::::\n\
echo " func sign2 f_name= var1 var2 ## Transfer of sign; var2/abs(var2)*abs(var2)"\n\
GENSYS>Calc Commands>func>n-z>sin The sinus function::::\n\
echo " func sin f_name= var ## The sinus function"\n\
GENSYS>Calc Commands>func>n-z>sqrt The square root function::::\n\
echo " func sqrt f_name= var ## The square root function"\n\
GENSYS>Calc Commands>func>n-z>stop Stops the calculation when the statement is passed::::\n\
echo " func stop ## Stop execution"\n\
GENSYS>Calc Commands>func>n-z>sub Subtraction::::\n\
echo " func sub f_name= var1 var2 ## Subtraction"\n\
GENSYS>Calc Commands>func>n-z>tan The tangent function::::\n\
echo " func tan f_name= var ## The tangent function"\n\
GENSYS>Calc Commands>func>n-z>tral_interp_spline Function for creating track irregularity variables::::\n\
echo " func tral_interp_spline axl_no ## Create track irregularity variables"\n\
GENSYS>Calc Commands>func>n-z>u_lim Sets the upper limit of a variable::::\n\
echo " func u_lim f_name= var ## Set upper limit"\n\
\
GENSYS>Calc Commands>initval>read_gpdat Read initial values from a GPdat-file::::\n\
echo " initval read_gpdat filegp def_no ## Read initial values from a GPdat-file"\n\
GENSYS>Calc Commands>initval>set_mass Set initial value to a mass::::\n\
echo " initval set_mass m_name dire value ## Set initial value to a mass"\n\
GENSYS>Calc Commands>initval>set_var Set initial value to a equation::::\n\
echo " initval set_var var value ## Set initial value to a equation"\n\
\
GENSYS>Calc Commands>lsys>e_fix Create a fixed esys::::\n\
echo "";\
echo "####";\
echo "#### Fixed esys";\
echo "#### --------------------------------------------------------------------------";\
echo " lsys e_fix l_name xk yk zk"\n\
GENSYS>Calc Commands>lsys>e_var_bend Create a moving esys, clothoid type of transition curves::::\n\
echo "";\
echo "####";\
echo "#### Moving esys with clothoid type of transition curves";\
echo "#### --------------------------------------------------------------------------";\
echo " lsys e_var_bend l_name vx x ro_field fi_field z_field"\n\
GENSYS>Calc Commands>lsys>e_var_bend2 Create a moving esys, Helmert/Schramm type of transition curves::::\n\
echo "";\
echo "####";\
echo "#### Moving esys with Helmert/Schramm type of transition curves";\
echo "#### --------------------------------------------------------------------------";\
echo " lsys e_var_bend2 l_name vx x ro_field fi_field z_field"\n\
GENSYS>Calc Commands>lsys>e_var_bendr Create a moving esys, Ruch type of transition curves::::\n\
echo "";\
echo "####";\
echo "#### Moving esys with Ruch type of transition curves";\
echo "#### --------------------------------------------------------------------------";\
echo " lsys e_var_bendr l_name vx x ro_field fi_field z_field b1 b2 f1 f2 z1 z2"\n\
GENSYS>Calc Commands>lsys>e_var_bendrf Ruch type of transition curves, fixed length of the smoothing section::::\n\
echo "";\
echo "####";\
echo "#### Moving esys with Ruch type of transition curves, fixed length of the smoothing section";\
echo "#### --------------------------------------------------------------------------------------";\
echo " lsys e_var_bendrf l_name vx x ro_field fi_field z_field b1 b2 f1 f2 z1 z2"\n\
GENSYS>Calc Commands>lsys>e_var_bends Create a moving esys, measured or Bloss type of transition curves::::\n\
echo "";\
echo "####";\
echo "#### Moving esys with spline interpolation in the memory fields";\
echo "#### --------------------------------------------------------------------------";\
echo " lsys e_var_bends l_name vx x ro_field fi_field z_field"\n\
GENSYS>Calc Commands>lsys>e_reg_xpos Regulate the longitudinal position of a esys, for braking and acceleration::::\n\
echo "";\
echo "####";\
echo "#### Regulate the longitudinal position of a esys, for braking and acceleration";\
echo "#### --------------------------------------------------------------------------";\
echo " lsys e_reg_xpos l_name m_name efreq edamp"\n\
GENSYS>Calc Commands>lsys>l_local Create a linear local lsys::::\n\
echo " lsys l_local l_name esys xk yk zk ## Linear local lsys"\n\
\
GENSYS>Calc Commands>mass>fixpoint_6 Creates a mass with constraints in all directions::::\n\
echo " mass fixpoint_6 m_name lsys acg bcg hcg ## Mass with 0 degree of freedom"\n\
GENSYS>Calc Commands>mass>m_flex_1 Define eigenfrequencies and damping for a flexible mass::::\n\
echo " mass m_flex_1 m_name fq1 damp1 fq2 damp2 fq3 ,,, ## Structural eigenfrequencies and damping"\n\
GENSYS>Calc Commands>mass>m_rigid_1 Creates a mass with 1 degree of freedom::::\n\
echo " mass m_rigid_1 m_name lsys acg bcg hcg m_data dire ## Mass with 1 degree of freedom"\n\
GENSYS>Calc Commands>mass>m_rigid_6 Creates a mass with 6 degrees of freedom::::\n\
echo " mass m_rigid_6 m_name lsys acg bcg hcg m_diag ## Mass with 6 degrees of freedom"\n\
GENSYS>Calc Commands>mass>m_rigid_6f Creates a mass without inertia acceleration::::\n\
echo " mass m_rigid_6f m_name lsys acg bcg hcg m_diag ## Mass without inertia acceleration"\n\
GENSYS>Calc Commands>mass>m_rigid_36b Creates a body with 6 degrees of freedom, body-fixed equations of motion::::\n\
echo " mass m_rigid_36b m_name lsys acg bcg hcg m_mat ## Mass with 6 degrees of freedom, body-fixed equations of motion"\n\
GENSYS>Calc Commands>mass>massless1 Mass without mass-matrix, only for stiffness couplings::::\n\
echo " mass massless1 m_name lsys acg bcg hcg r_linj r_feps m_loop ## Massless mass, only stiffnesses can be attached"\n\
GENSYS>Calc Commands>mass>massless2 Mass without mass-matrix, handles stiffnesses and dampers (must have dampers)::::\n\
echo " mass massless2 m_name lsys acg bcg hcg ## First order equations of motion, dampers must be attached"\n\
GENSYS>Calc Commands>mass>massless12 Mass without mass-matrix, position tolerance on unbalanced forces::::\n\
echo " mass massless12 m_name lsys acg bcg hcg r_linj r_feps m_loop ## Massless mass, tolerance on force"\n\
GENSYS>Calc Commands>mass>massless12p Mass without mass-matrix, position tolerance on unbalanced position::::\n\
echo " mass massless12p m_name lsys acg bcg hcg r_linj r_feps m_loop ## Massless mass, tolerance on position"\n\
GENSYS>Calc Commands>mass>massless13p Mass without mass-matrix, position tolerance on unbalanced position::::\n\
echo " mass massless13p m_name lsys acg bcg hcg r_linj r_feps m_loop ## Massless mass, tolerance on position"\n\
\
GENSYS>Calc Commands>s_var>force_on Store all forces acting on specified mass::::\n\
echo " s_var force_on m_name dire ## Store all forces acting on specified mass"\n\
GENSYS>Calc Commands>s_var>gpdat_force1 Write coupling forces to the GPdat-file::::\n\
echo " s_var gpdat_force1 var ## Write coupling forces to the GPdat-file"\n\
GENSYS>Calc Commands>s_var>gpdat_r1 Write the motions of all masses to the GPdat-file::::\n\
echo " s_var gpdat_r1 ## Write the motions of all masses to the GPdat-file"\n\
GENSYS>Calc Commands>s_var>gpdat_wheel_info Write wheel data information to the GPdat-file::::\n\
echo " s_var gpdat_wheel_info wheel_name lsys.b w_prof ## Write wheel data information to the GPdat-file"\n\
GENSYS>Calc Commands>s_var>gpdat_rail_info_right Write rail data information to the GPdat-file, right rail::::\n\
echo " s_var gpdat_rail_info_right X_coord_r1 r_prof_r1 X_coord_r2 r_prof_r2 X_coord_r3,,, etc."\n\
GENSYS>Calc Commands>s_var>gpdat_rail_info_left Write rail data information to the GPdat-file, left rail::::\n\
echo " s_var gpdat_rail_info_left X_coord_l1 r_prof_l1 X_coord_l2 r_prof_l2 X_coord_l3,,, etc."\n\
GENSYS>Calc Commands>s_var>scalar_0 Store a variable as a scalar on the MPdat-file::::\n\
echo " s_var scalar_0 s_name ## Store a variable as a scalar on the MPdat-file"\n\
GENSYS>Calc Commands>s_var>sngl Store a variable as a vector on the MPdat-file::::\n\
echo " s_var sngl s_name ## Store a variable as a vector on the MPdat-file"\n\
GENSYS>Calc Commands>s_var>var_0 Store a variable both as a vector and a scalar::::\n\
echo " s_var var_0 s_name ## Store a variable both as a vector and a scalar"\n\
\
GENSYS>Secondary susp>UIC linkage car-axle @Gensys_Prop::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_UIC_car-axle.propf \n\
GENSYS>Secondary susp>Centerplates>Flat Car-Bogie@Gensys_Prop::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_flat_center_plate_bogie.propf \n\
GENSYS>Secondary susp>Centerplates>Flat Car-Bolster@Gensys_Prop::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_flat_center_plate_bolster.propf \n\
GENSYS>Secondary susp>Centerplates>Spherical Car-Bogie@Gensys_Prop::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_spheric_center_plate_bogie.propf \n\
GENSYS>Secondary susp>Centerplates>Spherical Car-Bolster@Gensys_Prop::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_spheric_center_plate_bolster.propf \n\
\
GENSYS>Secondary susp>Longitudinal bolster stops@Gensys_Prop::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_long_bolster_stop.propf \n\
GENSYS>Secondary susp>Coil springs bolster-bogie@Gensys_Prop::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_coil_bolster-bogie.propf \n\
GENSYS>Secondary susp>Coil springs car-bogie @Gensys_Prop::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_coil_car-bogie.propf \n\
\
GENSYS>Secondary susp>UIC linkage car-axle @Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_UIC_car-axle.propf $genverif/main/calc/nedit_modelling/sec_susp_UIC_car-axle.runf \n\
GENSYS>Secondary susp>Centerplates>Flat Car-Bolster@Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_flat_center_plate_bogie.propf $genverif/main/calc/nedit_modelling/sec_susp_flat_center_plate_bolster.runf \n\
GENSYS>Secondary susp>Centerplates>Flat Car-Bogie@Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_spheric_center_plate_bogie.propf $genverif/main/calc/nedit_modelling/sec_susp_flat_center_plate_bogie.runf \n\
GENSYS>Secondary susp>Centerplates>Spherical Car-Bogie@Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_spheric_center_plate_bogie.propf $genverif/main/calc/nedit_modelling/sec_susp_spheric_center_plate_bogie.runf \n\
GENSYS>Secondary susp>Centerplates>Spherical Car-Bolster@Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_spheric_center_plate_bolster.propf $genverif/main/calc/nedit_modelling/sec_susp_spheric_center_plate_bolster.runf \n\
\
GENSYS>Secondary susp>Longitudinal bolster stops@Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_long_bolster_stop.propf $genverif/main/calc/nedit_modelling/sec_susp_long_bolster_stop.runf \n\
GENSYS>Secondary susp>Coil springs bolster-bogie@Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_coil_bolster-bogie.propf $genverif/main/calc/nedit_modelling/sec_susp_coil_bolster-bogie.runf \n\
GENSYS>Secondary susp>Coil springs car-bogie @Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_coil_car-bogie.propf $genverif/main/calc/nedit_modelling/sec_susp_coil_car-bogie.runf \n\
GENSYS>Secondary susp>Anti-roll bars @Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_anti-roll_bar.runf \n\
GENSYS>Secondary susp>Traction rods @Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_traction_rod.runf \n\
GENSYS>Secondary susp>Lateral bumpstops @Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_lat_bumpstop.runf \n\
GENSYS>Secondary susp>Vertical bumpstops @Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_vert_bumpstop.runf \n\
GENSYS>Secondary susp>Lateral viscous dampers @Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_lat_damp.runf \n\
GENSYS>Secondary susp>Vertical viscous dampers @Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_vert_damp.runf \n\
GENSYS>Secondary susp>Yaw viscous dampers @Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/sec_susp_yaw_damp.runf \n\
\
GENSYS>Primary susp>Springs @Gensys_Prop::::\n\
cat $genverif/main/calc/nedit_modelling/prim_susp_spring.propf \n\
GENSYS>Primary susp>Lateral bumpstops @Gensys_Prop::::\n\
cat $genverif/main/calc/nedit_modelling/prim_susp_lat_bumpstop.propf \n\
GENSYS>Primary susp>Vertical bumpstops @Gensys_Prop::::\n\
cat $genverif/main/calc/nedit_modelling/prim_susp_vert_bumpstop.propf \n\
GENSYS>Primary susp>Vertical viscous damper @Gensys_Prop::::\n\
cat $genverif/main/calc/nedit_modelling/prim_susp_vert_visc_damper.propf \n\
\
GENSYS>Primary susp>Springs @Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/prim_susp_spring.propf $genverif/main/calc/nedit_modelling/prim_susp_spring.runf \n\
GENSYS>Primary susp>Lateral bumpstops @Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/prim_susp_lat_bumpstop.propf $genverif/main/calc/nedit_modelling/prim_susp_lat_bumpstop.runf \n\
GENSYS>Primary susp>Vertical bumpstops @Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/prim_susp_vert_bumpstop.propf $genverif/main/calc/nedit_modelling/prim_susp_vert_bumpstop.runf \n\
GENSYS>Primary susp>Vertical viscous damper @Gensys_Calc::::\n\
cat $genverif/main/calc/nedit_modelling/prim_susp_vert_visc_damper.propf $genverif/main/calc/nedit_modelling/prim_susp_vert_visc_damper.runf \n\
\
GENSYS>Gensys_complete Shift+Alt+Return::c:E:\n\
gensys_complete "%"\n\
\
spell:Alt+B:s:EX:\n\
cat > /tmp/spellTmp_$$.txt && opterm -e "aspell check /tmp/spellTmp_$$.txt;echo;echo Please close this window;echo"; sleep 8; cat /tmp/spellTmp_$$.txt \n\
sort::o:EX:\n\
sort\n\
number lines::n:AW:\n\
nl -ba\n\
make:Alt+Z:m:W:\n\
make\n\
expand::p:EX:\n\
expand\n\
unexpand::u:EX:\n\
unexpand\n\
View_Html:Shift+Ctrl+Alt+V:v:ID:\n\
view_html\n\
WordCount::W:ID:\n\
cat |wc|awk '{print $1 " lines " $2 " words " $3 " chars "}'\n
nedit.macroCommands: \
Comment Code Block:Shift+Ctrl+3::: {\n\
if ($selection_start == -1)\n\
replace_all("^.*$", "#&", "regex")\n\
else\n\
replace_in_selection("^.*$", "#&", "regex")\n\
}\n\
Uncomment Code Block:Ctrl+3::: {\n\
if ($selection_start == -1)\n\
replace_all("^#(.*)$", "\\\\1", "regex")\n\
else\n\
replace_in_selection("^#(.*)$", "\\\\1", "regex")\n\
}\n\
fold:Alt+F::: {\n\
# t_print("str=" $selection_start "\\n") \n\
if ($selection_start == -1) { \n\
set_overtype_mode(0) \n\
beginning_of_line() \n\
find("^#+\\\\[-\\\\]\\\\{", "forward", "regex", "wrap") \n\
select_to_matching()\n\
} \n\
str= get_selection()\n\
# t_print("str=" length(str) str "\\n") \n\
if (length(str) > 0 && str != "[-]" && str != "[+]") \n\
fold_bracket_match()\n\
else\n\
dialog( "Nothing more to fold", "Close")\n\
#dialog( "The cursor must be to the right of one of the curly braces", "Close")\n\
}\n\
unfold:Shift+Alt+F::: {\n\
fold_expand()\n\
}\n\
Gensys Complete:Shift+Alt+Return::: {\n\
if ($selection_start == -1) {\n\
beginning_of_line("extend")\n\
}\n\
shell_menu_command("GENSYS>Gensys_complete Shift+Alt+Return")\n\
if ($selection_start == -1) {\n\
end_of_line()\n\
}\n\
}\n\
Complete Word:Alt+D::: {\n\
# This macro attempts to complete the current word by\n\
# finding another word in the same document that has\n\
# the same prefix; repeated invocations of the macro\n\
# (by repeated typing of its accelerator, say) cycles\n\
# through the alternatives found.\n\
# \n\
# Make sure $compWord contains something (a dummy index)\n\
$compWord[""] = ""\n\
\n\
# Test whether the rest of $compWord has been initialized:\n\
# this avoids having to initialize the global variable\n\
# $compWord in an external macro file\n\
if (!("wordEnd" in $compWord)) {\n\
# we need to initialize it\n\
$compWord["wordEnd"] = 0\n\
$compWord["repeat"] = 0\n\
$compWord["init"] = 0\n\
$compWord["wordStart"] = 0\n\
}\n\
\n\
if ($compWord["wordEnd"] == $cursor) {\n\
$compWord["repeat"] += 1\n\
}\n\
else {\n\
$compWord["repeat"] = 1\n\
$compWord["init"] = $cursor\n\
\n\
# search back to a word boundary to find the word to complete\n\
# (we use \\w here to allow for programming "words" that can include\n\
# digits and underscores; use \\l for letters only)\n\
$compWord["wordStart"] = search("<\\\\w+", $cursor, "backward", "regex", "wrap")\n\
\n\
if ($compWord["wordStart"] == -1)\n\
return\n\
\n\
if ($search_end == $cursor)\n\
$compWord["word"] = get_range($compWord["wordStart"], $cursor)\n\
else\n\
return\n\
}\n\
s = $cursor\n\
for (i=0; i <= $compWord["repeat"]; i++)\n\
s = search($compWord["word"], s - 1, "backward", "regex", "wrap")\n\
\n\
if (s == $compWord["wordStart"]) {\n\
beep()\n\
$compWord["repeat"] = 0\n\
s = $compWord["wordStart"]\n\
se = $compWord["init"]\n\
}\n\
else\n\
se = search(">", s, "regex")\n\
\n\
replace_range($compWord["wordStart"], $cursor, get_range(s, se))\n\
\n\
$compWord["wordEnd"] = $cursor\n\
}\n\
Fill Sel. w/Char:::R: {\n\
# This macro replaces each character position in\n\
# the selection with the string typed into the dialog\n\
# it displays.\n\
if ($selection_start == -1) {\n\
beep()\n\
return\n\
}\n\
\n\
# Ask the user what character to fill with\n\
fillChar = string_dialog("Fill selection with what character?", \\\n\
"OK", "Cancel")\n\
if ($string_dialog_button == 2 || $string_dialog_button == 0)\n\
return\n\
\n\
# Count the number of lines (NL characters) in the selection\n\
# (by removing all non-NLs in selection and counting the remainder)\n\
nLines = length(replace_in_string(get_selection(), \\\n\
"^.*$", "", "regex"))\n\
\n\
rectangular = $selection_left != -1\n\
\n\
# work out the pieces of required of the replacement text\n\
# this will be top mid bot where top is empty or ends in NL,\n\
# mid is 0 or more lines of repeats ending with NL, and\n\
# bot is 0 or more repeats of the fillChar\n\
\n\
toplen = -1 # top piece by default empty (no NL)\n\
midlen = 0\n\
botlen = 0\n\
\n\
if (rectangular) {\n\
# just fill the rectangle: mid\\n \\ nLines\n\
# mid\\n /\n\
# bot - last line with no nl\n\
midlen = $selection_right - $selection_left\n\
botlen = $selection_right - $selection_left\n\
} else {\n\
# |col[0]\n\
# .........toptoptop\\n |col[0]\n\
# either midmidmidmidmidmid\\n \\ nLines - 1 or ...botbot...\n\
# midmidmidmidmidmid\\n / |col[1]\n\
# botbot... |\n\
# |col[1] |wrap margin\n\
# we need column positions col[0], col[1] of selection start and\n\
# end (use a loop and arrays to do the two positions)\n\
sel[0] = $selection_start\n\
sel[1] = $selection_end\n\
\n\
# col[0] = pos_to_column($selection_start)\n\
# col[1] = pos_to_column($selection_end)\n\
\n\
for (i = 0; i < 2; ++i) {\n\
end = sel[i]\n\
pos = search("^", end, "regex", "backward")\n\
thisCol = 0\n\
while (pos < end) {\n\
nexttab = search("\\t", pos)\n\
if (nexttab < 0 || nexttab >= end) {\n\
thisCol += end - pos # count remaining non-tabs\n\
nexttab = end\n\
} else {\n\
thisCol += nexttab - pos + $tab_dist\n\
thisCol -= (thisCol % $tab_dist)\n\
}\n\
pos = nexttab + 1 # skip past the tab or end\n\
}\n\
col[i] = thisCol\n\
}\n\
toplen = max($wrap_margin - col[0], 0)\n\
botlen = min(col[1], $wrap_margin)\n\
\n\
if (nLines == 0) {\n\
toplen = -1\n\
botlen = max(botlen - col[0], 0)\n\
} else {\n\
midlen = $wrap_margin\n\
if (toplen < 0)\n\
toplen = 0\n\
nLines-- # top piece will end in a NL\n\
}\n\
}\n\
\n\
# Create the fill text\n\
# which is the longest piece? make a line of that length\n\
# (use string doubling - this allows the piece to be\n\
# appended to double in size at each iteration)\n\
\n\
len = max(toplen, midlen, botlen)\n\
charlen = length(fillChar) # maybe more than one char given!\n\
\n\
line = ""\n\
while (len > 0) {\n\
if (len % 2)\n\
line = line fillChar\n\
len /= 2\n\
if (len > 0)\n\
fillChar = fillChar fillChar\n\
}\n\
# assemble our pieces\n\
toppiece = ""\n\
midpiece = ""\n\
botpiece = ""\n\
if (toplen >= 0)\n\
toppiece = substring(line, 0, toplen * charlen) "\\n"\n\
if (botlen > 0)\n\
botpiece = substring(line, 0, botlen * charlen)\n\
\n\
# assemble midpiece (use doubling again)\n\
line = substring(line, 0, midlen * charlen) "\\n"\n\
while (nLines > 0) {\n\
if (nLines % 2)\n\
midpiece = midpiece line\n\
nLines /= 2\n\
if (nLines > 0)\n\
line = line line\n\
}\n\
# Replace the selection with the complete fill text\n\
replace_selection(toppiece midpiece botpiece)\n\
}\n\
Quote Mail Reply:::: {\n\
if ($selection_start == -1)\n\
replace_all("^.*$", "\\\\> &", "regex")\n\
else\n\
replace_in_selection("^.*$", "\\\\> &", "regex")\n\
}\n\
Unquote Mail Reply:::: {\n\
if ($selection_start == -1)\n\
replace_all("(^\\\\> )(.*)$", "\\\\2", "regex")\n\
else\n\
replace_in_selection("(^\\\\> )(.*)$", "\\\\2", "regex")\n\
}\n\
Html Documents>New Line@SGML HTML:::: {\n\
insert_string("
")\n\
}\n\
Html Documents>Bold Font@SGML HTML:::: {\n\
replace_in_selection(".*", "&", "regexNoCase")\n\
forward_character()\n\
backward_character()\n\
}\n\
Html Documents>Purple Font@SGML HTML:::: {\n\
replace_in_selection(".*", "&", "regexNoCase")\n\
forward_character()\n\
backward_character()\n\
}\n\
Html Documents>Comment Out Line@SGML HTML:::: {\n\
beginning_of_line()\n\
end_of_line("extend")\n\
macro_menu_command("Html Documents>Comment Out Sel.@SGML HTML")\n\
beginning_of_line()\n\
process_down()\n\
}\n\
Html Documents>Comment Out Sel.@SGML HTML:::R: {\n\
selStart = $selection_start\n\
selEnd = $selection_end\n\
replace_range(selStart, selEnd, "\\