MCPcopy Index your code
hub / github.com/codeaashu/claude-code / buildCommonPluginDirectoryPaths

Function buildCommonPluginDirectoryPaths

src/utils/jetbrains.ts:29–82  ·  view source on GitHub ↗
(ideName: string)

Source from the content-addressed store, hash-verified

27// Build plugin directory paths
28// https://www.jetbrains.com/help/pycharm/directories-used-by-the-ide-to-store-settings-caches-plugins-and-logs.html#plugins-directory
29function buildCommonPluginDirectoryPaths(ideName: string): string[] {
30 const homeDir = homedir()
31 const directories: string[] = []
32 const idePatterns = ideNameToDirMap[ideName.toLowerCase()]
33 if (!idePatterns) {
34 return directories
35 }
36
37 const appData = process.env.APPDATA || join(homeDir, 'AppData', 'Roaming')
38 const localAppData =
39 process.env.LOCALAPPDATA || join(homeDir, 'AppData', 'Local')
40
41 switch (platform()) {
42 case 'darwin':
43 directories.push(
44 join(homeDir, 'Library', 'Application Support', 'JetBrains'),
45 join(homeDir, 'Library', 'Application Support'),
46 )
47 if (ideName.toLowerCase() === 'androidstudio') {
48 directories.push(
49 join(homeDir, 'Library', 'Application Support', 'Google'),
50 )
51 }
52 break
53
54 case 'win32':
55 directories.push(
56 join(appData, 'JetBrains'),
57 join(localAppData, 'JetBrains'),
58 join(appData),
59 )
60 if (ideName.toLowerCase() === 'androidstudio') {
61 directories.push(join(localAppData, 'Google'))
62 }
63 break
64
65 case 'linux':
66 directories.push(
67 join(homeDir, '.config', 'JetBrains'),
68 join(homeDir, '.local', 'share', 'JetBrains'),
69 )
70 for (const pattern of idePatterns) {
71 directories.push(join(homeDir, '.' + pattern))
72 }
73 if (ideName.toLowerCase() === 'androidstudio') {
74 directories.push(join(homeDir, '.config', 'Google'))
75 }
76 break
77 default:
78 break
79 }
80
81 return directories
82}
83
84// Find all actual plugin directories that exist
85async function detectPluginDirectories(ideName: string): Promise<string[]> {

Callers 1

detectPluginDirectoriesFunction · 0.85

Calls 2

platformFunction · 0.85
pushMethod · 0.45

Tested by

no test coverage detected