Skip to content

Commit

Permalink
Standalone jack-in to temp folder
Browse files Browse the repository at this point in the history
  • Loading branch information
PEZ committed Feb 14, 2021
1 parent f3cdd52 commit 100eaed
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 9 deletions.
4 changes: 3 additions & 1 deletion hello-repl.clj
Expand Up @@ -2,7 +2,9 @@

;; Alt+Enter evaluates ”top level” forms
;; Try it with the cursor anywhere inside this function
(defn greet [name]
(defn greet
"Doc strings matter"
[name]
(str "Hello " name "!"))

;; To clear inline results display, press ESC
Expand Down
2 changes: 1 addition & 1 deletion src/connector.ts
Expand Up @@ -485,7 +485,7 @@ async function standaloneConnect(context: vscode.ExtensionContext, connectSequen
await state.initProjectDir();
let projectDirUri = state.getProjectRootUri();
if (!projectDirUri) {
projectDirUri = await state.getOrCreateNonProjectRoot(context);
projectDirUri = await state.getOrCreateNonProjectRoot(context, true);
}
await state.initProjectDir(projectDirUri);
await outputWindow.initResultsDoc();
Expand Down
6 changes: 1 addition & 5 deletions src/nrepl/jack-in.ts
Expand Up @@ -258,11 +258,7 @@ export const TEMPLATE_FILE_NAME = 'user.clj';
export const HELLO_TEMPLATE_FILE_NAME = 'hello-repl.clj';

export async function startStandaloneRepl(context: vscode.ExtensionContext, template: string) {
await state.initProjectDir();
let projectDirUri = state.getProjectRootUri();
if (!projectDirUri) {
projectDirUri = await state.getOrCreateNonProjectRoot(context);
}
let projectDirUri = await state.getOrCreateNonProjectRoot(context);
await state.initProjectDir(projectDirUri);

await vscode.workspace.fs.createDirectory(projectDirUri);
Expand Down
7 changes: 5 additions & 2 deletions src/state.ts
Expand Up @@ -141,9 +141,12 @@ export function getProjectRootUri(useCache = true): vscode.Uri {
}
}

export async function getOrCreateNonProjectRoot(context: vscode.ExtensionContext): Promise<vscode.Uri> {
export async function getOrCreateNonProjectRoot(context: vscode.ExtensionContext, preferProjectDir = false): Promise<vscode.Uri> {
const NON_PROJECT_DIR_KEY = "calva.connect.nonProjectDir";
let root = getProjectRootUri();
let root: vscode.Uri;
if (preferProjectDir) {
root = getProjectRootUri();
}
if (!root) {
try {
root = await context.workspaceState.get(NON_PROJECT_DIR_KEY) as vscode.Uri;
Expand Down

0 comments on commit 100eaed

Please sign in to comment.