You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+27-25Lines changed: 27 additions & 25 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,17 +3,17 @@
3
3
4
4
# Cider Project Manager
5
5
6
-
Cider offers some User commands that are useful to manage projects. In addition is also offers an API.
6
+
Cider offers some User commands useful for managing projects. It also offers an API.
7
7
8
-
It cooperates with [Tatin](https://github.com/aplteam.Cider"Link to Cider on GitHub").
8
+
It cooperates with [Tatin](https://github.com/aplteam/Tatin"Link to the Tatin repository on GitHub").
9
9
10
10
11
11
## Requirements
12
12
13
13
Cider requires
14
14
15
15
* Dyalog 18.0 Unicode or better
16
-
* Link 3.0.8 or better
16
+
* Link 3.0.8 or better (part of a standard Dyalog installation from 18.2 onwards)
17
17
* The Tatin package manager (because Cider itself is a Tatin package)
18
18
19
19
@@ -40,28 +40,29 @@ These commands are available:
40
40
41
41
## Documentation
42
42
43
-
In this document only `OpenProject` is discussed in detail because that is the main command.
43
+
Only `OpenProject` is discussed in detail in this document because it is the main command.
44
44
45
-
For all other commands only basic information is provided, but there is a document "Cider-User-Guide.html" available that discusses all features in detail.
45
+
For all other commands only basic information is provided. A comprehensive User Guide is available as an HTML document, see [Cider-User-Guide.html](https://html-preview.github.io/?url=https://github.com/aplteam/Cider/blob/main/html/Cider-User-Guide.html).
46
46
47
47
The user command help is also pretty exhaustive.
48
48
49
-
Regarding the API there is a document "Cider-API-Reference.html" available.
50
-
49
+
Regarding the API, the document [Cider-API-Reference.html](https://html-preview.github.io/?url=https://github.com/aplteam/Cider/blob/main/html/Cider-API-Reference.html) is available.
51
50
52
51
## Installation
53
52
54
-
In version 19.0 Cider is part of a standard installation of Dyalog, although it needs activation before it is available. Therefore you only have to worry about installing it with version 18.0 and 18.2. Cider does not run on earlier versions of Dyalog.
53
+
In version 19.0 Cider is part of a standard installation of Dyalog, although it needs activation before it is available. Therefore you only have to worry about installing it with versions 18.0 and 18.2. Cider does not run on earlier versions of Dyalog.
54
+
55
+
Cider can be activated with `]Activate Cider` (after first activating Tatin in a similar way because Tatin is required by Cider) or by activating Cider and Tatin in one step with `]Activate all`.
55
56
56
57
With version 0.23 Cider became a Tatin package. That simplifies the installation process: all you need to do is issue this command:
If it is installed into a folder that is scanned for user command scripts by Dyalog, then when a new instance of Dyalog is started`]Cider` will be available. For an instance that was already running when Cider was installed execute `]UReset`.
63
+
If it is installed into a folder that is scanned for user command scripts by Dyalog, then when a new instance of Dyalog is started,`]Cider` will be available. For an instance that was already running when Cider was installed, execute `]UReset`.
63
64
64
-
If it installed into a folder that is not scanned for user command scripts you need to add that folder to the `cmddir` parameter of SALT.
65
+
If it is installed into a folder that is not scanned for user command scripts, you need to add that folder to the `cmddir` parameter of SALT.
65
66
66
67
Example:
67
68
@@ -71,7 +72,7 @@ Example:
71
72
72
73
_**Watch out for the `,` in front of the path: it means that the folder is added!_**
73
74
74
-
However, the API only becomes available after any Cider user command was executed. `]Cider.Version` is enough for that.
75
+
However, the API only becomes available after executing any Cider user command. `]Cider.Version` is enough for that.
75
76
76
77
If that is not good enough for you, this article explains how to load user commands into `⎕SE` at a very early stage: <https://aplwiki.com/wiki/Dyalog_User_Commands>
77
78
@@ -89,10 +90,10 @@ Accepts an optional parameter that must be one of:
89
90
* A folder that hosts a file `cider.config`
90
91
* An alias that points to such a folder
91
92
92
-
If no such parameter is specified then the current directory is searched for a file `cider.config`.
93
+
If no such parameter is specified, then the current directory is searched for a file `cider.config`.
93
94
94
95
* If such a file exists the user is asked whether she really wants to open that project
95
-
* If no such file exists then under Windows a dialog box is opened that allows the user to navigate to a Cider project
96
+
* If no such file exists, then under Windows a dialog box is opened that allows the user to navigate to a Cider project
96
97
97
98
On non-Windows platforms an error is thrown.
98
99
@@ -106,21 +107,22 @@ Once a folder is established that holds a Cider config file, the user command pe
106
107
1. Brings all code and variables into the project space
107
108
1. Checks whether any Tatin install folders do not actually have any packages installed but have a non-empty dependency file.
108
109
109
-
This may happen in case the package install folders are not uploaded to, say, GitHub (`.gitignore`) and the project was just downloaded.
110
-
1.Asks the user whether Cider should check all Tatin packages (if there are any) for later versions
111
-
1.Loads all Tatin packages specified in the file `cider.config`, if any; see `dependencies.tatin` and `dependencies_dev.tatin`
112
-
1.Injects a namespace `CiderConfig` into the project space and...
110
+
This may happen if the package install folders are not uploaded to, say, GitHub (`.gitignore`) and the project has just been downloaded.
111
+
1.Ask the user whether Cider should check all Tatin packages (if there are any) for later versions
112
+
1.Load all Tatin packages specified in the file `cider.config`, if any; see `dependencies.tatin` and `dependencies_dev.tatin`
113
+
1.Inject a namespace `CiderConfig` into the project space and...
113
114
* populates it with the contents of the configuration file as APL arrays
114
115
* adds a variable `HOME` that remembers the path the project was loaded from
115
-
1.Injects a namespace `TatinVars` in case the project would end up as a package
116
-
1.Checks whether the project's config file does carry a non-empty value for `init`. If that's the case it must be a function that is then called by Cider, typically for initializing the project
116
+
1.Inject a namespace `TatinVars` in case the project ends up as a package
117
+
1.Check whether the project's config file does carry a non-empty value for `init`. If that's the case, it must be a function that is then called by Cider, typically for initializing the project
117
118
1. If there is a variable `ToDo` in the root of the project, and the variable is not empty, then this variable is printed to the session
118
-
1. If the project is managed by Git then Cider executes the `git status` command on the project folder and puts the result on view
119
+
1. Cider can check for Dropbox conflicts at this stage (configurable)
120
+
1. If the project is managed by Git, then Cider executes the `git status` command on the project folder and puts the result on view (configurable)
119
121
120
122
Notes:
121
123
122
124
* The name of the project space is defined in the Cider config file, but this can be overwritten with the `-projectSpace=` option
123
-
* In case the `dependencies.tatin` and `dependencies_dev.tatin` parameter specifies one or more packages then the references pointing to those Tatin packages are all established in `projectSpace` by default.
125
+
* In case the `dependencies.tatin` and `dependencies_dev.tatin` parameter specifies one or more packages, then the references pointing to those Tatin packages are all established in `projectSpace` by default.
124
126
125
127
However, this can be overwritten by specifying a different target space by adding:
126
128
@@ -141,7 +143,7 @@ Notes:
141
143
142
144
* All principal packages found in `packages/` within the project folder are loaded into the project space because that is the default, and the default was not overwritten
143
145
144
-
* All principal packages found in `packages_dev/` within the project folder are loaded into the project's subnamespace `TestCases` within the project space because the default _was_ overwritten
146
+
* All principal packages found in `packages_dev/` within the project folder are loaded into the project's sub-namespace `TestCases` within the project space because the default _was_ overwritten
145
147
146
148
### `CloseProject`
147
149
@@ -160,12 +162,12 @@ Creates a file `cider.config` in that folder.
160
162
161
163
### `Config`
162
164
163
-
Allow the user to edit Cider's global config file.
165
+
Allow the user to edit Cider's global config file.
164
166
165
167
166
168
### `Help`
167
169
168
-
Offers the user to view selected or all HTML documents with her standard browser.
170
+
Offers the user the ability to view selected or all HTML documents with her standard browser.
169
171
170
172
### `AddNuGetDependencies`
171
173
@@ -212,4 +214,4 @@ Returns a three-item-vector with "Name", "Version number" and "Version date".
212
214
213
215
### `UpdateCider`
214
216
215
-
Update Cider in case there is a later version available.
217
+
Update Cider in case a later version is available as a package on [https://tatin.dev](https://tatin.dev).
0 commit comments