summaryrefslogtreecommitdiff
path: root/miralib/manual/31/5
blob: 546724d991146dcd2b1ec5215dd5c031bbbae9f9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
_H_o_w_ _t_o_ _c_h_a_n_g_e_ _t_h_e_ _d_e_f_a_u_l_t_ _e_d_i_t_o_r

The Miranda /edit or /e command (see  manual  page  on  Miranda  command
interpreter)  invokes  an  editor.  By default this is the screen editor
"vi", but if you wish to use another editor, this is easily changed.

The Miranda command
	/editor

reports the editor currently in use by the Miranda system.  To change it
to (for example) pico, say
	/editor pico

Alternatively, when next invoking the miranda system from UNIX  you  can
supply it with a flag requesting a specific editor by name, as follows:
	mira -editor pico

In either case it is only necessary to do this once  since  the  Miranda
system  stores  this and other information in a file called ".mirarc" in
your home directory - you should not remove or try to edit this file.

You can select any editor that is installed on your system.  If you  are
unfamiliar  with  vi  and haven't an editor in mind, the editor pico (if
installed) is particularly easy to use - it has instructions on  screen.
Similar  are nano (an open source clone of pico) and joe.  Other editors
include emacs and gvim - these both open a separate editor window.

The editor you select will be used by both the /e command and by
	??identifier
which opens the relevant source file at the definition of identifier.

_M_o_r_e_ _a_d_v_a_n_c_e_d_ _i_n_f_o_r_m_a_t_i_o_n

The Miranda system is designed to work with an editor which can  open  a
file  at  a  specified line number.  For example to make the editor `vi'
open `file' at line 13, the UNIX command is
        vi +13 file
the Miranda system has built in knowledge of this, so if  the  installed
editor  is `vi' and the compiler has found a syntax error in the script,
the `/e' command will open the script at the line containing the error.

To retain this ability when substituting another editor,  the  `/editor'
command  requires  a  template for invoking the chosen editor at a given
line number.  In this template the line number  is  represented  by  the
character  `!'  and  the filename by `%'.  For example the full template
for `vi' would be supplied as follows
        /editor vi +! %

If the `%' character does not occur in the template,  Miranda  will  add
the  name  of  the  file at the end of the command.  So the template for
`vi' could equally well be given as
	/editor vi +!
The same formula works for pico, nano, joe.  If the editor is  one  that
starts up its own window, separate from the Miranda session window (gvim
and emacs do this), you will want to make the editor run as a concurrent
process by putting "&" at the end of the command, thus
	/editor emacs +! % &
Note  that  in  this  case  you  must include % where the filename goes,
because adding it after the "&" would not make sense.

In fact Miranda has built in knowledge of vi, pico, nano, joe, emacs and
gvim,  so  just  giving the name of the editor will generate the correct
template in these cases.

If you install an editor without  the  capability  to  be  opened  at  a
specified  line  number  (i.e.   you  cannot  give  a  template  for  it
containing the `!' character), the /e command loses its ability to go to
the right place after an error, and the `??' command will be disabled.

The Miranda system will work without either of these features, but there
is a significant loss of power in the user interface.

If the installed editor lacks the `open at line number' feature, you may
find  it  convenient  to  have  the  script  listed to the screen during
compilation (this feature of the compiler can be switched on and off  by
the  commands `/list', `/nolist').  As an assistance to naive users, the
Miranda system turns on `/list' for you if the `/editor' command is used
to install an editor without the `open at line number' feature.

[Pathological case: if the editor command you wish to install contains a
literal  `!'  or  `%'  that  you  don't want replaced, place a backslash
before the relevant !  or %.  This protects it from being expanded.]

_C_h_e_c_k_i_n_g_ _f_o_r_ _s_o_u_r_c_e_ _u_p_d_a_t_e_s

If during a session changes have been made to any relevant source  file,
the  Miranda  system automatically recompiles the current script and any
other scripts which it directly or indirectly `%includes' and which have
been  changed.   At  a  minimum this check is performed after each /edit
command and after each shell escape.

A mode of operation possible on a windowing system is to keep an  editor
window and Miranda session window both open.  In this case more frequent
checking is appropriate and you should say /recheck (see 6  "Summary  of
remaining  commands").   This  sets  a  flag  which  tells  the  Miranda
interpreter to check for source file  updates  before  each  evaluation,
instead  of  only  after /e and !  commands.  But remember that you will
need to save any edits to file before the `mira' session can see them.

As an assistance to naive users /recheck is automatically turned  on  if
/editor  is  used  to install an editor template which includes "&", the
symbol used in UNIX shell commands to start a concurrent process.

Say /norecheck to revert to the default behaviour.