Add EmoSet training and evaluation

This commit is contained in:
zin
2026-01-13 10:00:04 +00:00
parent ea505b4f9c
commit 00a8472c8d
547 changed files with 62318 additions and 0 deletions

10
.idea/.gitignore generated vendored Normal file
View File

@@ -0,0 +1,10 @@
# Default ignored files
/shelf/
/workspace.xml
# Ignored default folder with query files
/queries/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
# Editor-based HTTP Client requests
/httpRequests/

8
.idea/Thesis.iml generated Normal file
View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="PYTHON_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$" />
<orderEntry type="jdk" jdkName="Python 3.12" jdkType="Python SDK" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

View File

@@ -0,0 +1,6 @@
<component name="InspectionProjectProfileManager">
<settings>
<option name="USE_PROJECT_PROFILE" value="false" />
<version value="1.0" />
</settings>
</component>

7
.idea/misc.xml generated Normal file
View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Black">
<option name="sdkName" value="Python 3.12" />
</component>
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.12" project-jdk-type="Python SDK" />
</project>

8
.idea/modules.xml generated Normal file
View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/Thesis.iml" filepath="$PROJECT_DIR$/.idea/Thesis.iml" />
</modules>
</component>
</project>

6
.idea/vcs.xml generated Normal file
View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>

4
CACHEDIR.TAG Normal file
View File

@@ -0,0 +1,4 @@
Signature: 8a477f597d28d172789f06886806bc55
# This file is a cache directory tag created by Python virtualenv.
# For information about cache directory tags, see:
# https://bford.info/cachedir/

87
bin/activate Normal file
View File

@@ -0,0 +1,87 @@
# This file must be used with "source bin/activate" *from bash*
# you cannot run it directly
if [ "${BASH_SOURCE-}" = "$0" ]; then
echo "You must source this script: \$ source $0" >&2
exit 33
fi
deactivate () {
unset -f pydoc >/dev/null 2>&1 || true
# reset old environment variables
# ! [ -z ${VAR+_} ] returns true if VAR is declared at all
if ! [ -z "${_OLD_VIRTUAL_PATH:+_}" ] ; then
PATH="$_OLD_VIRTUAL_PATH"
export PATH
unset _OLD_VIRTUAL_PATH
fi
if ! [ -z "${_OLD_VIRTUAL_PYTHONHOME+_}" ] ; then
PYTHONHOME="$_OLD_VIRTUAL_PYTHONHOME"
export PYTHONHOME
unset _OLD_VIRTUAL_PYTHONHOME
fi
# The hash command must be called to get it to forget past
# commands. Without forgetting past commands the $PATH changes
# we made may not be respected
hash -r 2>/dev/null
if ! [ -z "${_OLD_VIRTUAL_PS1+_}" ] ; then
PS1="$_OLD_VIRTUAL_PS1"
export PS1
unset _OLD_VIRTUAL_PS1
fi
unset VIRTUAL_ENV
unset VIRTUAL_ENV_PROMPT
if [ ! "${1-}" = "nondestructive" ] ; then
# Self destruct!
unset -f deactivate
fi
}
# unset irrelevant variables
deactivate nondestructive
VIRTUAL_ENV=/home/zin/projects/Thesis
if ([ "$OSTYPE" = "cygwin" ] || [ "$OSTYPE" = "msys" ]) && $(command -v cygpath &> /dev/null) ; then
VIRTUAL_ENV=$(cygpath -u "$VIRTUAL_ENV")
fi
export VIRTUAL_ENV
_OLD_VIRTUAL_PATH="$PATH"
PATH="$VIRTUAL_ENV/"bin":$PATH"
export PATH
if [ "x"'' != x ] ; then
VIRTUAL_ENV_PROMPT=''
else
VIRTUAL_ENV_PROMPT=$(basename "$VIRTUAL_ENV")
fi
export VIRTUAL_ENV_PROMPT
# unset PYTHONHOME if set
if ! [ -z "${PYTHONHOME+_}" ] ; then
_OLD_VIRTUAL_PYTHONHOME="$PYTHONHOME"
unset PYTHONHOME
fi
if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT-}" ] ; then
_OLD_VIRTUAL_PS1="${PS1-}"
PS1="(${VIRTUAL_ENV_PROMPT}) ${PS1-}"
export PS1
fi
# Make sure to unalias pydoc if it's already there
alias pydoc 2>/dev/null >/dev/null && unalias pydoc || true
pydoc () {
python -m pydoc "$@"
}
# The hash command must be called to get it to forget past
# commands. Without forgetting past commands the $PATH changes
# we made may not be respected
hash -r 2>/dev/null || true

55
bin/activate.csh Normal file
View File

@@ -0,0 +1,55 @@
# This file must be used with "source bin/activate.csh" *from csh*.
# You cannot run it directly.
# Created by Davide Di Blasi <davidedb@gmail.com>.
set newline='\
'
alias deactivate 'test $?_OLD_VIRTUAL_PATH != 0 && setenv PATH "$_OLD_VIRTUAL_PATH:q" && unset _OLD_VIRTUAL_PATH; rehash; test $?_OLD_VIRTUAL_PROMPT != 0 && set prompt="$_OLD_VIRTUAL_PROMPT:q" && unset _OLD_VIRTUAL_PROMPT; unsetenv VIRTUAL_ENV; unsetenv VIRTUAL_ENV_PROMPT; test "\!:*" != "nondestructive" && unalias deactivate && unalias pydoc'
# Unset irrelevant variables.
deactivate nondestructive
setenv VIRTUAL_ENV /home/zin/projects/Thesis
set _OLD_VIRTUAL_PATH="$PATH:q"
setenv PATH "$VIRTUAL_ENV:q/"bin":$PATH:q"
if ('' != "") then
setenv VIRTUAL_ENV_PROMPT ''
else
setenv VIRTUAL_ENV_PROMPT "$VIRTUAL_ENV:t:q"
endif
if ( $?VIRTUAL_ENV_DISABLE_PROMPT ) then
if ( $VIRTUAL_ENV_DISABLE_PROMPT == "" ) then
set do_prompt = "1"
else
set do_prompt = "0"
endif
else
set do_prompt = "1"
endif
if ( $do_prompt == "1" ) then
# Could be in a non-interactive environment,
# in which case, $prompt is undefined and we wouldn't
# care about the prompt anyway.
if ( $?prompt ) then
set _OLD_VIRTUAL_PROMPT="$prompt:q"
if ( "$prompt:q" =~ *"$newline:q"* ) then
:
else
set prompt = '('"$VIRTUAL_ENV_PROMPT:q"') '"$prompt:q"
endif
endif
endif
unset env_name
unset do_prompt
alias pydoc python -m pydoc
rehash

103
bin/activate.fish Normal file
View File

@@ -0,0 +1,103 @@
# This file must be used using `source bin/activate.fish` *within a running fish ( http://fishshell.com ) session*.
# Do not run it directly.
function _bashify_path -d "Converts a fish path to something bash can recognize"
set fishy_path $argv
set bashy_path $fishy_path[1]
for path_part in $fishy_path[2..-1]
set bashy_path "$bashy_path:$path_part"
end
echo $bashy_path
end
function _fishify_path -d "Converts a bash path to something fish can recognize"
echo $argv | tr ':' '\n'
end
function deactivate -d 'Exit virtualenv mode and return to the normal environment.'
# reset old environment variables
if test -n "$_OLD_VIRTUAL_PATH"
# https://github.com/fish-shell/fish-shell/issues/436 altered PATH handling
if test (echo $FISH_VERSION | head -c 1) -lt 3
set -gx PATH (_fishify_path "$_OLD_VIRTUAL_PATH")
else
set -gx PATH $_OLD_VIRTUAL_PATH
end
set -e _OLD_VIRTUAL_PATH
end
if test -n "$_OLD_VIRTUAL_PYTHONHOME"
set -gx PYTHONHOME "$_OLD_VIRTUAL_PYTHONHOME"
set -e _OLD_VIRTUAL_PYTHONHOME
end
if test -n "$_OLD_FISH_PROMPT_OVERRIDE"
and functions -q _old_fish_prompt
# Set an empty local `$fish_function_path` to allow the removal of `fish_prompt` using `functions -e`.
set -l fish_function_path
# Erase virtualenv's `fish_prompt` and restore the original.
functions -e fish_prompt
functions -c _old_fish_prompt fish_prompt
functions -e _old_fish_prompt
set -e _OLD_FISH_PROMPT_OVERRIDE
end
set -e VIRTUAL_ENV
set -e VIRTUAL_ENV_PROMPT
if test "$argv[1]" != 'nondestructive'
# Self-destruct!
functions -e pydoc
functions -e deactivate
functions -e _bashify_path
functions -e _fishify_path
end
end
# Unset irrelevant variables.
deactivate nondestructive
set -gx VIRTUAL_ENV /home/zin/projects/Thesis
# https://github.com/fish-shell/fish-shell/issues/436 altered PATH handling
if test (echo $FISH_VERSION | head -c 1) -lt 3
set -gx _OLD_VIRTUAL_PATH (_bashify_path $PATH)
else
set -gx _OLD_VIRTUAL_PATH $PATH
end
set -gx PATH "$VIRTUAL_ENV"'/'bin $PATH
# Prompt override provided?
# If not, just use the environment name.
if test -n ''
set -gx VIRTUAL_ENV_PROMPT ''
else
set -gx VIRTUAL_ENV_PROMPT (basename "$VIRTUAL_ENV")
end
# Unset `$PYTHONHOME` if set.
if set -q PYTHONHOME
set -gx _OLD_VIRTUAL_PYTHONHOME $PYTHONHOME
set -e PYTHONHOME
end
function pydoc
python -m pydoc $argv
end
if test -z "$VIRTUAL_ENV_DISABLE_PROMPT"
# Copy the current `fish_prompt` function as `_old_fish_prompt`.
functions -c fish_prompt _old_fish_prompt
function fish_prompt
# Run the user's prompt first; it might depend on (pipe)status.
set -l prompt (_old_fish_prompt)
printf '(%s) ' $VIRTUAL_ENV_PROMPT
string join -- \n $prompt # handle multi-line prompts
end
set -gx _OLD_FISH_PROMPT_OVERRIDE "$VIRTUAL_ENV"
end

96
bin/activate.nu Normal file
View File

@@ -0,0 +1,96 @@
# virtualenv activation module
# Activate with `overlay use activate.nu`
# Deactivate with `deactivate`, as usual
#
# To customize the overlay name, you can call `overlay use activate.nu as foo`,
# but then simply `deactivate` won't work because it is just an alias to hide
# the "activate" overlay. You'd need to call `overlay hide foo` manually.
export-env {
def is-string [x] {
($x | describe) == 'string'
}
def has-env [...names] {
$names | each {|n|
$n in $env
} | all {|i| $i == true}
}
# Emulates a `test -z`, but better as it handles e.g 'false'
def is-env-true [name: string] {
if (has-env $name) {
# Try to parse 'true', '0', '1', and fail if not convertible
let parsed = (do -i { $env | get $name | into bool })
if ($parsed | describe) == 'bool' {
$parsed
} else {
not ($env | get -i $name | is-empty)
}
} else {
false
}
}
let virtual_env = r#'/home/zin/projects/Thesis'#
let bin = r#'bin'#
let is_windows = ($nu.os-info.family) == 'windows'
let path_name = (if (has-env 'Path') {
'Path'
} else {
'PATH'
}
)
let venv_path = ([$virtual_env $bin] | path join)
let new_path = ($env | get $path_name | prepend $venv_path)
# If there is no default prompt, then use the env name instead
let virtual_env_prompt = (if (r#''# | is-empty) {
($virtual_env | path basename)
} else {
r#''#
})
let new_env = {
$path_name : $new_path
VIRTUAL_ENV : $virtual_env
VIRTUAL_ENV_PROMPT : $virtual_env_prompt
}
let new_env = (if (is-env-true 'VIRTUAL_ENV_DISABLE_PROMPT') {
$new_env
} else {
# Creating the new prompt for the session
let virtual_prefix = $'(char lparen)($virtual_env_prompt)(char rparen) '
# Back up the old prompt builder
let old_prompt_command = (if (has-env 'PROMPT_COMMAND') {
$env.PROMPT_COMMAND
} else {
''
})
let new_prompt = (if (has-env 'PROMPT_COMMAND') {
if 'closure' in ($old_prompt_command | describe) {
{|| $'($virtual_prefix)(do $old_prompt_command)' }
} else {
{|| $'($virtual_prefix)($old_prompt_command)' }
}
} else {
{|| $'($virtual_prefix)' }
})
$new_env | merge {
PROMPT_COMMAND : $new_prompt
VIRTUAL_PREFIX : $virtual_prefix
}
})
# Environment variables that will be loaded as the virtual env
load-env $new_env
}
export alias pydoc = python -m pydoc
export alias deactivate = overlay hide activate

61
bin/activate.ps1 Normal file
View File

@@ -0,0 +1,61 @@
$script:THIS_PATH = $myinvocation.mycommand.path
$script:BASE_DIR = Split-Path (Resolve-Path "$THIS_PATH/..") -Parent
function global:deactivate([switch] $NonDestructive) {
if (Test-Path variable:_OLD_VIRTUAL_PATH) {
$env:PATH = $variable:_OLD_VIRTUAL_PATH
Remove-Variable "_OLD_VIRTUAL_PATH" -Scope global
}
if (Test-Path function:_old_virtual_prompt) {
$function:prompt = $function:_old_virtual_prompt
Remove-Item function:\_old_virtual_prompt
}
if ($env:VIRTUAL_ENV) {
Remove-Item env:VIRTUAL_ENV -ErrorAction SilentlyContinue
}
if ($env:VIRTUAL_ENV_PROMPT) {
Remove-Item env:VIRTUAL_ENV_PROMPT -ErrorAction SilentlyContinue
}
if (!$NonDestructive) {
# Self destruct!
Remove-Item function:deactivate
Remove-Item function:pydoc
}
}
function global:pydoc {
python -m pydoc $args
}
# unset irrelevant variables
deactivate -nondestructive
$VIRTUAL_ENV = $BASE_DIR
$env:VIRTUAL_ENV = $VIRTUAL_ENV
if ('' -ne "") {
$env:VIRTUAL_ENV_PROMPT = ''
}
else {
$env:VIRTUAL_ENV_PROMPT = $( Split-Path $env:VIRTUAL_ENV -Leaf )
}
New-Variable -Scope global -Name _OLD_VIRTUAL_PATH -Value $env:PATH
$env:PATH = "$env:VIRTUAL_ENV/" + 'bin' + ':' + $env:PATH
if (!$env:VIRTUAL_ENV_DISABLE_PROMPT) {
function global:_old_virtual_prompt {
""
}
$function:_old_virtual_prompt = $function:prompt
function global:prompt {
# Add the custom prefix to the existing prompt
$previous_prompt_value = & $function:_old_virtual_prompt
("(" + $env:VIRTUAL_ENV_PROMPT + ") " + $previous_prompt_value)
}
}

38
bin/activate_this.py Normal file
View File

@@ -0,0 +1,38 @@
"""
Activate virtualenv for current interpreter:
import runpy
runpy.run_path(this_file)
This can be used when you must use an existing Python interpreter, not the virtualenv bin/python.
""" # noqa: D415
from __future__ import annotations
import os
import site
import sys
try:
abs_file = os.path.abspath(__file__)
except NameError as exc:
msg = "You must use import runpy; runpy.run_path(this_file)"
raise AssertionError(msg) from exc
bin_dir = os.path.dirname(abs_file)
base = bin_dir[: -len('bin') - 1] # strip away the bin part from the __file__, plus the path separator
# prepend bin to PATH (this file is inside the bin directory)
os.environ["PATH"] = os.pathsep.join([bin_dir, *os.environ.get("PATH", "").split(os.pathsep)])
os.environ["VIRTUAL_ENV"] = base # virtual env is right above bin directory
os.environ["VIRTUAL_ENV_PROMPT"] = '' or os.path.basename(base)
# add the virtual environments libraries to the host python import mechanism
prev_length = len(sys.path)
for lib in '../lib/python3.12/site-packages'.split(os.pathsep):
path = os.path.realpath(os.path.join(bin_dir, lib))
site.addsitedir(path.decode("utf-8") if '' else path)
sys.path[:] = sys.path[prev_length:] + sys.path[0:prev_length]
sys.real_prefix = sys.prefix
sys.prefix = base

8
bin/debugpy Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from debugpy.server.cli import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/debugpy-adapter Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from debugpy.adapter.__main__ import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/f2py Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from numpy.f2py.f2py2e import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/fonttools Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from fontTools.__main__ import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/httpx Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from httpx import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/ipython Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from IPython import start_ipython
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(start_ipython())

8
bin/ipython3 Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from IPython import start_ipython
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(start_ipython())

8
bin/isympy Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from isympy import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/jlpm Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from jupyterlab.jlpmapp import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

67
bin/jsonpointer Executable file
View File

@@ -0,0 +1,67 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import argparse
import json
import sys
import jsonpointer
parser = argparse.ArgumentParser(
description='Resolve a JSON pointer on JSON files')
# Accept pointer as argument or as file
ptr_group = parser.add_mutually_exclusive_group(required=True)
ptr_group.add_argument('-f', '--pointer-file', type=argparse.FileType('r'),
nargs='?',
help='File containing a JSON pointer expression')
ptr_group.add_argument('POINTER', type=str, nargs='?',
help='A JSON pointer expression')
parser.add_argument('FILE', type=argparse.FileType('r'), nargs='+',
help='Files for which the pointer should be resolved')
parser.add_argument('--indent', type=int, default=None,
help='Indent output by n spaces')
parser.add_argument('-v', '--version', action='version',
version='%(prog)s ' + jsonpointer.__version__)
def main():
try:
resolve_files()
except KeyboardInterrupt:
sys.exit(1)
def parse_pointer(args):
if args.POINTER:
ptr = args.POINTER
elif args.pointer_file:
ptr = args.pointer_file.read().strip()
else:
parser.print_usage()
sys.exit(1)
return ptr
def resolve_files():
""" Resolve a JSON pointer on JSON files """
args = parser.parse_args()
ptr = parse_pointer(args)
for f in args.FILE:
doc = json.load(f)
try:
result = jsonpointer.resolve_pointer(doc, ptr)
print(json.dumps(result, indent=args.indent))
except jsonpointer.JsonPointerException as e:
print('Could not resolve pointer: %s' % str(e), file=sys.stderr)
if __name__ == "__main__":
main()

8
bin/jsonschema Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from jsonschema.cli import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/jupyter Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from jupyter_core.command import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/jupyter-dejavu Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from nbconvert.nbconvertapp import dejavu_main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(dejavu_main())

8
bin/jupyter-events Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from jupyter_events.cli import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/jupyter-execute Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from nbclient.cli import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/jupyter-kernel Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from jupyter_client.kernelapp import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/jupyter-kernelspec Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from jupyter_client.kernelspecapp import KernelSpecApp
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(KernelSpecApp.launch_instance())

8
bin/jupyter-lab Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from jupyterlab.labapp import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/jupyter-labextension Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from jupyterlab.labextensions import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/jupyter-labhub Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from jupyterlab.labhubapp import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/jupyter-migrate Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from jupyter_core.migrate import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/jupyter-nbconvert Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from nbconvert.nbconvertapp import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/jupyter-run Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from jupyter_client.runapp import RunApp
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(RunApp.launch_instance())

8
bin/jupyter-server Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from jupyter_server.serverapp import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/jupyter-troubleshoot Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from jupyter_core.troubleshoot import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/jupyter-trust Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from nbformat.sign import TrustNotebookApp
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(TrustNotebookApp.launch_instance())

8
bin/normalizer Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from charset_normalizer.cli import cli_detect
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(cli_detect())

8
bin/numpy-config Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from numpy._configtool import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/pip Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal.cli.main import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
sys.exit(main())

8
bin/pip-3.12 Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal.cli.main import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
sys.exit(main())

8
bin/pip3 Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal.cli.main import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
sys.exit(main())

8
bin/pip3.12 Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal.cli.main import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
sys.exit(main())

8
bin/proton Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from triton.profiler.proton import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/proton-viewer Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from triton.profiler.viewer import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/pybabel Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from babel.messages.frontend import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/pyftmerge Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from fontTools.merge import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/pyftsubset Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from fontTools.subset import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/pygmentize Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from pygments.cmdline import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/pyjson5 Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from json5.tool import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

1
bin/python Symbolic link
View File

@@ -0,0 +1 @@
/usr/bin/python3

1
bin/python3 Symbolic link
View File

@@ -0,0 +1 @@
python

1
bin/python3.12 Symbolic link
View File

@@ -0,0 +1 @@
python

8
bin/send2trash Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from send2trash.__main__ import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/torchfrtrace Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from tools.flight_recorder.fr_trace import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/torchrun Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from torch.distributed.run import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/tqdm Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from tqdm.cli import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/ttx Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from fontTools.ttx import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

8
bin/wsdump Executable file
View File

@@ -0,0 +1,8 @@
#!/home/zin/projects/Thesis/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from websocket._wsdump import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())

View File

@@ -0,0 +1,7 @@
{
"NotebookApp": {
"nbserver_extensions": {
"jupyterlab": true
}
}
}

View File

@@ -0,0 +1,7 @@
{
"ServerApp": {
"jpserver_extensions": {
"jupyter_lsp": true
}
}
}

View File

@@ -0,0 +1,7 @@
{
"ServerApp": {
"jpserver_extensions": {
"jupyter_server_terminals": true
}
}
}

View File

@@ -0,0 +1,7 @@
{
"ServerApp": {
"jpserver_extensions": {
"jupyterlab": true
}
}
}

View File

@@ -0,0 +1,7 @@
{
"ServerApp": {
"jpserver_extensions": {
"notebook_shim": true
}
}
}

3820
poetry.lock generated Normal file

File diff suppressed because it is too large Load Diff

28
pyproject.toml Normal file
View File

@@ -0,0 +1,28 @@
[project]
name = "thesis"
version = "0.0.1"
description = "Моя диссертационная работа"
authors = [
{name = "Zin"}
]
readme = "README.md"
requires-python = ">=3.11,<3.15"
dependencies = [
"torch (==2.9.1)",
"torchvision (==0.24.1)",
"matplotlib (>=3.10.8,<4.0.0)",
"jupyterlab (>=4.5.1,<5.0.0)",
"ipykernel (>=7.1.0,<8.0.0)",
"torchaudio (>=2.9.1,<3.0.0)",
"numpy (>=2.4.1,<3.0.0)",
"pandas (>=2.3.3,<3.0.0)",
"scikit-learn (>=1.8.0,<2.0.0)",
"tqdm (>=4.67.1,<5.0.0)",
"jupyter (>=1.1.1,<2.0.0)",
"findingemo-light (>=1.0.0,<2.0.0)"
]
[build-system]
requires = ["poetry-core>=2.0.0,<3.0.0"]
build-backend = "poetry.core.masonry.api"

8
pyvenv.cfg Normal file
View File

@@ -0,0 +1,8 @@
home = /usr/bin
implementation = CPython
version_info = 3.12.3.final.0
virtualenv = 20.31.2
include-system-site-packages = false
base-prefix = /usr
base-exec-prefix = /usr
base-executable = /usr/bin/python3.12

View File

@@ -0,0 +1,11 @@
[Desktop Entry]
Name=JupyterLab
Comment=Run JupyterLab
Exec=jupyter-lab %f
Terminal=true
Type=Application
Icon=jupyterlab
StartupNotify=true
MimeType=application/x-ipynb+json;
Categories=Development;Education;
Keywords=python;

View File

@@ -0,0 +1,164 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="51"
height="51"
viewBox="0 0 51 51"
version="2.0"
id="svg40"
sodipodi:docname="jupyter.svg"
inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:figma="http://www.figma.com/figma/ns">
<sodipodi:namedview
id="namedview42"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showgrid="false"
inkscape:zoom="15.862745"
inkscape:cx="19.353523"
inkscape:cy="15.381953"
inkscape:window-width="1920"
inkscape:window-height="979"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg40" />
<title
id="title2">logo-5.svg</title>
<desc
id="desc4">Created using Figma 0.90</desc>
<g
id="Canvas"
transform="translate(-1631.819,-2281)"
figma:type="canvas">
<g
id="logo"
style="mix-blend-mode:normal"
figma:type="group">
<g
id="g"
style="mix-blend-mode:normal"
figma:type="group">
<g
id="path"
style="mix-blend-mode:normal"
figma:type="group">
<g
id="path7 fill"
style="mix-blend-mode:normal"
figma:type="vector">
<use
xlink:href="#path0_fill"
transform="translate(1669.3,2281.31)"
fill="#767677"
style="mix-blend-mode:normal"
id="use6" />
</g>
</g>
<g
id="g13"
style="mix-blend-mode:normal"
figma:type="group">
<g
id="path8 fill"
style="mix-blend-mode:normal"
figma:type="vector">
<use
xlink:href="#path1_fill"
transform="translate(1639.74,2311.98)"
fill="#f37726"
style="mix-blend-mode:normal"
id="use10" />
</g>
</g>
<g
id="g18"
style="mix-blend-mode:normal"
figma:type="group">
<g
id="path9 fill"
style="mix-blend-mode:normal"
figma:type="vector">
<use
xlink:href="#path2_fill"
transform="translate(1639.73,2285.48)"
fill="#f37726"
style="mix-blend-mode:normal"
id="use15" />
</g>
</g>
<g
id="g23"
style="mix-blend-mode:normal"
figma:type="group">
<g
id="path10 fill"
style="mix-blend-mode:normal"
figma:type="vector">
<use
xlink:href="#path3_fill"
transform="translate(1639.8,2323.81)"
fill="#989798"
style="mix-blend-mode:normal"
id="use20" />
</g>
</g>
<g
id="g28"
style="mix-blend-mode:normal"
figma:type="group">
<g
id="path11 fill"
style="mix-blend-mode:normal"
figma:type="vector">
<use
xlink:href="#path4_fill"
transform="translate(1638.36,2286.06)"
fill="#6f7070"
style="mix-blend-mode:normal"
id="use25" />
</g>
</g>
</g>
</g>
</g>
<defs
id="defs38">
<path
id="path0_fill"
d="M 5.89353,2.844 C 5.91889,3.43165 5.77085,4.01367 5.46815,4.51645 5.16545,5.01922 4.72168,5.42015 4.19299,5.66851 3.6643,5.91688 3.07444,6.00151 2.49805,5.91171 1.92166,5.8219 1.38463,5.5617 0.954898,5.16401 0.52517,4.76633 0.222056,4.24903 0.0839037,3.67757 -0.0542483,3.10611 -0.02123,2.50617 0.178781,1.95364 0.378793,1.4011 0.736809,0.920817 1.20754,0.573538 1.67826,0.226259 2.24055,0.0275919 2.82326,0.00267229 3.60389,-0.0307115 4.36573,0.249789 4.94142,0.782551 5.51711,1.31531 5.85956,2.05676 5.89353,2.844 Z" />
<path
id="path1_fill"
d="M 18.2646,7.13411 C 10.4145,7.13411 3.55872,4.2576 0,0 c 1.32539,3.8204 3.79556,7.13081 7.0686,9.47303 3.2731,2.34217 7.1871,3.60037 11.2004,3.60037 4.0133,0 7.9273,-1.2582 11.2004,-3.60037 C 32.7424,7.13081 35.2126,3.8204 36.538,0 32.9705,4.2576 26.1148,7.13411 18.2646,7.13411 Z" />
<path
id="path2_fill"
d="m 18.2733,5.93931 c 7.8502,0 14.706,2.87652 18.2647,7.13409 C 35.2126,9.25303 32.7424,5.94262 29.4694,3.6004 26.1963,1.25818 22.2823,0 18.269,0 14.2557,0 10.3417,1.25818 7.0686,3.6004 3.79556,5.94262 1.32539,9.25303 0,13.0734 3.56745,8.82463 10.4232,5.93931 18.2733,5.93931 Z" />
<path
id="path3_fill"
d="M 7.42789,3.58338 C 7.46008,4.3243 7.27355,5.05819 6.89193,5.69213 6.51031,6.32607 5.95075,6.83156 5.28411,7.1446 4.61747,7.45763 3.87371,7.56414 3.14702,7.45063 2.42032,7.33712 1.74336,7.0087 1.20184,6.50695 0.660328,6.0052 0.27861,5.35268 0.105017,4.63202 -0.0685757,3.91135 -0.0262361,3.15494 0.226675,2.45856 0.479587,1.76217 0.931697,1.15713 1.52576,0.720033 2.11983,0.282935 2.82914,0.0334395 3.56389,0.00313344 4.54667,-0.0374033 5.50529,0.316706 6.22961,0.987835 6.95393,1.65896 7.38484,2.59235 7.42789,3.58338 Z" />
<path
id="path4_fill"
d="M 2.27471,4.39629 C 1.84363,4.41508 1.41671,4.30445 1.04799,4.07843 0.679268,3.8524 0.385328,3.52114 0.203371,3.12656 0.0214136,2.73198 -0.0403798,2.29183 0.0258116,1.86181 0.0920031,1.4318 0.283204,1.03126 0.575213,0.710883 0.867222,0.39051 1.24691,0.164708 1.66622,0.0620592 2.08553,-0.0405897 2.52561,-0.0154714 2.93076,0.134235 3.33591,0.283941 3.68792,0.551505 3.94222,0.90306 4.19652,1.25462 4.34169,1.67436 4.35935,2.10916 4.38299,2.69107 4.17678,3.25869 3.78597,3.68746 3.39516,4.11624 2.85166,4.37116 2.27471,4.39629 Z" />
</defs>
<metadata
id="metadata271">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:title>logo-5.svg</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
</svg>

After

Width:  |  Height:  |  Size: 6.4 KiB

View File

@@ -0,0 +1,14 @@
{
"argv": [
"python",
"-m",
"ipykernel_launcher",
"-f",
"{connection_file}"
],
"display_name": "Python 3 (ipykernel)",
"language": "python",
"metadata": {
"debugger": true
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@@ -0,0 +1,265 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
version="1.0"
id="svg2"
sodipodi:version="0.32"
inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
sodipodi:docname="python-logo-only.svg"
width="83.371017pt"
height="101.00108pt"
inkscape:export-filename="python-logo-only.png"
inkscape:export-xdpi="232.44"
inkscape:export-ydpi="232.44"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<metadata
id="metadata371">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
inkscape:window-height="2080"
inkscape:window-width="1976"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
guidetolerance="10.0"
gridtolerance="10.0"
objecttolerance="10.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base"
inkscape:zoom="2.1461642"
inkscape:cx="91.558698"
inkscape:cy="47.9926"
inkscape:window-x="1092"
inkscape:window-y="72"
inkscape:current-layer="svg2"
width="210mm"
height="40mm"
units="mm"
inkscape:showpageshadow="2"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="pt"
showgrid="false"
inkscape:window-maximized="0" />
<defs
id="defs4">
<linearGradient
id="linearGradient2795">
<stop
style="stop-color:#b8b8b8;stop-opacity:0.49803922;"
offset="0"
id="stop2797" />
<stop
style="stop-color:#7f7f7f;stop-opacity:0;"
offset="1"
id="stop2799" />
</linearGradient>
<linearGradient
id="linearGradient2787">
<stop
style="stop-color:#7f7f7f;stop-opacity:0.5;"
offset="0"
id="stop2789" />
<stop
style="stop-color:#7f7f7f;stop-opacity:0;"
offset="1"
id="stop2791" />
</linearGradient>
<linearGradient
id="linearGradient3676">
<stop
style="stop-color:#b2b2b2;stop-opacity:0.5;"
offset="0"
id="stop3678" />
<stop
style="stop-color:#b3b3b3;stop-opacity:0;"
offset="1"
id="stop3680" />
</linearGradient>
<linearGradient
id="linearGradient3236">
<stop
style="stop-color:#f4f4f4;stop-opacity:1"
offset="0"
id="stop3244" />
<stop
style="stop-color:white;stop-opacity:1"
offset="1"
id="stop3240" />
</linearGradient>
<linearGradient
id="linearGradient4671">
<stop
style="stop-color:#ffd43b;stop-opacity:1;"
offset="0"
id="stop4673" />
<stop
style="stop-color:#ffe873;stop-opacity:1"
offset="1"
id="stop4675" />
</linearGradient>
<linearGradient
id="linearGradient4689">
<stop
style="stop-color:#5a9fd4;stop-opacity:1;"
offset="0"
id="stop4691" />
<stop
style="stop-color:#306998;stop-opacity:1;"
offset="1"
id="stop4693" />
</linearGradient>
<linearGradient
x1="224.23996"
y1="144.75717"
x2="-65.308502"
y2="144.75717"
id="linearGradient2987"
xlink:href="#linearGradient4671"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(100.2702,99.61116)" />
<linearGradient
x1="172.94208"
y1="77.475983"
x2="26.670298"
y2="76.313133"
id="linearGradient2990"
xlink:href="#linearGradient4689"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(100.2702,99.61116)" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4689"
id="linearGradient2587"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(100.2702,99.61116)"
x1="172.94208"
y1="77.475983"
x2="26.670298"
y2="76.313133" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4671"
id="linearGradient2589"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(100.2702,99.61116)"
x1="224.23996"
y1="144.75717"
x2="-65.308502"
y2="144.75717" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4689"
id="linearGradient2248"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(100.2702,99.61116)"
x1="172.94208"
y1="77.475983"
x2="26.670298"
y2="76.313133" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4671"
id="linearGradient2250"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(100.2702,99.61116)"
x1="224.23996"
y1="144.75717"
x2="-65.308502"
y2="144.75717" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4671"
id="linearGradient2255"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.562541,0,0,0.567972,-11.5974,-7.60954)"
x1="224.23996"
y1="144.75717"
x2="-65.308502"
y2="144.75717" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4689"
id="linearGradient2258"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.562541,0,0,0.567972,-11.5974,-7.60954)"
x1="172.94208"
y1="76.176224"
x2="26.670298"
y2="76.313133" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient2795"
id="radialGradient2801"
cx="61.518883"
cy="132.28575"
fx="61.518883"
fy="132.28575"
r="29.036913"
gradientTransform="matrix(1,0,0,0.177966,0,108.7434)"
gradientUnits="userSpaceOnUse" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4671"
id="linearGradient1475"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.562541,0,0,0.567972,-14.99112,-11.702371)"
x1="150.96111"
y1="192.35176"
x2="112.03144"
y2="137.27299" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4689"
id="linearGradient1478"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.562541,0,0,0.567972,-14.99112,-11.702371)"
x1="26.648937"
y1="20.603781"
x2="135.66525"
y2="114.39767" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient2795"
id="radialGradient1480"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.7490565e-8,-0.23994696,1.054668,3.7915457e-7,-83.7008,142.46201)"
cx="61.518883"
cy="132.28575"
fx="61.518883"
fy="132.28575"
r="29.036913" />
</defs>
<path
style="fill:url(#linearGradient1478);fill-opacity:1"
d="M 54.918785,9.1927421e-4 C 50.335132,0.02221727 45.957846,0.41313697 42.106285,1.0946693 30.760069,3.0991731 28.700036,7.2947714 28.700035,15.032169 v 10.21875 h 26.8125 v 3.40625 h -26.8125 -10.0625 c -7.792459,0 -14.6157588,4.683717 -16.7499998,13.59375 -2.46181998,10.212966 -2.57101508,16.586023 0,27.25 1.9059283,7.937852 6.4575432,13.593748 14.2499998,13.59375 h 9.21875 v -12.25 c 0,-8.849902 7.657144,-16.656248 16.75,-16.65625 h 26.78125 c 7.454951,0 13.406253,-6.138164 13.40625,-13.625 v -25.53125 c 0,-7.2663386 -6.12998,-12.7247771 -13.40625,-13.9374997 C 64.281548,0.32794397 59.502438,-0.02037903 54.918785,9.1927421e-4 Z m -14.5,8.21875012579 c 2.769547,0 5.03125,2.2986456 5.03125,5.1249996 -2e-6,2.816336 -2.261703,5.09375 -5.03125,5.09375 -2.779476,-1e-6 -5.03125,-2.277415 -5.03125,-5.09375 -10e-7,-2.826353 2.251774,-5.1249996 5.03125,-5.1249996 z"
id="path1948" />
<path
style="fill:url(#linearGradient1475);fill-opacity:1"
d="m 85.637535,28.657169 v 11.90625 c 0,9.230755 -7.825895,16.999999 -16.75,17 h -26.78125 c -7.335833,0 -13.406249,6.278483 -13.40625,13.625 v 25.531247 c 0,7.266344 6.318588,11.540324 13.40625,13.625004 8.487331,2.49561 16.626237,2.94663 26.78125,0 6.750155,-1.95439 13.406253,-5.88761 13.40625,-13.625004 V 86.500919 h -26.78125 v -3.40625 h 26.78125 13.406254 c 7.792461,0 10.696251,-5.435408 13.406241,-13.59375 2.79933,-8.398886 2.68022,-16.475776 0,-27.25 -1.92578,-7.757441 -5.60387,-13.59375 -13.406241,-13.59375 z m -15.0625,64.65625 c 2.779478,3e-6 5.03125,2.277417 5.03125,5.093747 -2e-6,2.826354 -2.251775,5.125004 -5.03125,5.125004 -2.76955,0 -5.03125,-2.29865 -5.03125,-5.125004 2e-6,-2.81633 2.261697,-5.093747 5.03125,-5.093747 z"
id="path1950" />
<ellipse
style="opacity:0.44382;fill:url(#radialGradient1480);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:15.4174;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path1894"
cx="55.816761"
cy="127.70079"
rx="35.930977"
ry="6.9673119" />
</svg>

After

Width:  |  Height:  |  Size: 9.4 KiB

View File

@@ -0,0 +1,376 @@
{
"title": "Application Commands",
"description": "Application commands settings.",
"jupyter.lab.shortcuts": [
{
"command": "application:activate-next-tab",
"keys": ["Ctrl Shift ]"],
"selector": "body"
},
{
"command": "application:activate-previous-tab",
"keys": ["Ctrl Shift ["],
"selector": "body"
},
{
"command": "application:activate-next-tab-bar",
"keys": ["Ctrl Shift ."],
"selector": "body"
},
{
"command": "application:activate-previous-tab-bar",
"keys": ["Ctrl Shift ,"],
"selector": "body"
},
{
"command": "application:close",
"keys": ["Alt W"],
"selector": ".jp-Activity"
},
{
"command": "application:toggle-mode",
"keys": ["Accel Shift D"],
"selector": "body"
},
{
"command": "application:toggle-left-area",
"keys": ["Accel B"],
"selector": "body"
},
{
"command": "application:toggle-right-area",
"keys": ["Accel J"],
"selector": "body"
},
{
"command": "application:toggle-presentation-mode",
"keys": [""],
"selector": "body"
},
{
"command": "application:toggle-fullscreen-mode",
"keys": ["F11"],
"selector": "body"
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt 1"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "left",
"index": 0
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt 2"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "left",
"index": 1
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt 3"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "left",
"index": 2
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt 4"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "left",
"index": 3
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt 5"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "left",
"index": 4
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt 6"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "left",
"index": 5
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt 7"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "left",
"index": 6
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt 8"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "left",
"index": 7
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt 9"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "left",
"index": 8
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt 0"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "left",
"index": 9
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt Shift 1"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "right",
"index": 0
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt Shift 2"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "right",
"index": 1
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt Shift 3"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "right",
"index": 2
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt Shift 4"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "right",
"index": 3
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt Shift 5"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "right",
"index": 4
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt Shift 6"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "right",
"index": 5
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt Shift 7"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "right",
"index": 6
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt Shift 8"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "right",
"index": 7
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt Shift 9"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "right",
"index": 8
}
},
{
"command": "application:toggle-sidebar-widget",
"keys": ["Alt Shift 0"],
"macKeys": [""],
"selector": "body",
"args": {
"side": "right",
"index": 9
}
}
],
"jupyter.lab.menus": {
"main": [
{
"id": "jp-mainmenu-file",
"items": [
{
"type": "separator",
"rank": 3
},
{
"command": "application:close",
"rank": 3
},
{
"command": "application:close-all",
"rank": 3.2
}
]
},
{
"id": "jp-mainmenu-view",
"items": [
{
"type": "submenu",
"rank": 1,
"submenu": {
"id": "jp-mainmenu-view-appearance",
"label": "Appearance",
"items": [
{
"command": "application:toggle-mode",
"rank": 0
},
{
"command": "application:toggle-presentation-mode",
"rank": 0
},
{
"command": "application:toggle-fullscreen-mode",
"rank": 0
},
{
"type": "separator",
"rank": 10
},
{
"command": "application:toggle-left-area",
"rank": 11
},
{
"command": "application:toggle-side-tabbar",
"rank": 12,
"args": {
"side": "left"
}
},
{
"command": "application:toggle-right-area",
"rank": 13
},
{
"command": "application:toggle-side-tabbar",
"rank": 14,
"args": {
"side": "right"
}
},
{
"command": "application:toggle-header",
"rank": 15
},
{
"type": "separator",
"rank": 50
},
{
"command": "application:reset-layout",
"rank": 51
}
]
}
},
{
"type": "separator",
"rank": 1
}
]
}
],
"context": [
{
"command": "application:close",
"selector": "#jp-main-dock-panel .lm-DockPanel-tabBar .lm-TabBar-tab",
"rank": 4
},
{
"command": "application:close-other-tabs",
"selector": "#jp-main-dock-panel .lm-DockPanel-tabBar .lm-TabBar-tab",
"rank": 4
},
{
"command": "application:close-all",
"selector": "#jp-main-dock-panel .lm-DockPanel-tabBar .lm-TabBar-tab",
"rank": 4
},
{
"command": "application:close-right-tabs",
"selector": "#jp-main-dock-panel .lm-DockPanel-tabBar .lm-TabBar-tab",
"rank": 5
},
{
"command": "__internal:context-menu-info",
"selector": "body",
"rank": 9007199254740991
}
]
},
"properties": {},
"additionalProperties": false,
"type": "object"
}

View File

@@ -0,0 +1,120 @@
{
"title": "Application Context Menu",
"description": "JupyterLab context menu settings.",
"jupyter.lab.setting-icon-label": "Application Context Menu",
"jupyter.lab.shortcuts": [],
"jupyter.lab.transform": true,
"properties": {
"contextMenu": {
"title": "The application context menu.",
"description": "Note: To disable a context menu item,\ncopy it to User Preferences and add the\n\"disabled\" key. The following example will disable Download item on files:\n{\n \"contextMenu\": [\n {\n \"command\": \"filebrowser:download\",\n \"selector\": \".jp-DirListing-item[data-isdir=\\\"false\\\"]\",\n \"disabled\": true\n }\n ]\n}\n\nContext menu description:",
"items": {
"allOf": [
{ "$ref": "#/definitions/menuItem" },
{
"properties": {
"selector": {
"description": "The CSS selector for the context menu item.",
"type": "string"
}
}
}
]
},
"type": "array",
"default": []
},
"disabled": {
"description": "Whether the application context (right-click) menu is disabled",
"type": "boolean",
"default": false
}
},
"additionalProperties": false,
"definitions": {
"menu": {
"properties": {
"disabled": {
"description": "Whether the menu is disabled or not",
"type": "boolean",
"default": false
},
"icon": {
"description": "Menu icon id",
"type": "string"
},
"id": {
"description": "Menu unique id",
"type": "string",
"pattern": "[a-z][a-z0-9\\-_]+"
},
"items": {
"description": "Menu items",
"type": "array",
"items": {
"$ref": "#/definitions/menuItem"
}
},
"label": {
"description": "Menu label",
"type": "string"
},
"mnemonic": {
"description": "Mnemonic index for the label",
"type": "number",
"minimum": -1,
"default": -1
},
"rank": {
"description": "Menu rank",
"type": "number",
"minimum": 0
}
},
"required": ["id"],
"additionalProperties": false,
"type": "object"
},
"menuItem": {
"properties": {
"args": {
"description": "Command arguments",
"type": "object"
},
"command": {
"description": "Command id",
"type": "string"
},
"disabled": {
"description": "Whether the item is disabled or not",
"type": "boolean",
"default": false
},
"type": {
"description": "Item type",
"type": "string",
"enum": ["command", "submenu", "separator"],
"default": "command"
},
"rank": {
"description": "Item rank",
"type": "number",
"minimum": 0
},
"submenu": {
"description": "Submenu definition",
"oneOf": [
{
"$ref": "#/definitions/menu"
},
{
"type": "null"
}
]
}
},
"type": "object"
}
},
"type": "object"
}

View File

@@ -0,0 +1,68 @@
{
"name": "@jupyterlab/application-extension",
"version": "4.5.1",
"description": "JupyterLab - Application Extension",
"homepage": "https://github.com/jupyterlab/jupyterlab",
"bugs": {
"url": "https://github.com/jupyterlab/jupyterlab/issues"
},
"repository": {
"type": "git",
"url": "https://github.com/jupyterlab/jupyterlab.git"
},
"license": "BSD-3-Clause",
"author": "Project Jupyter",
"sideEffects": [
"style/**/*.css",
"style/index.js"
],
"main": "lib/index.js",
"types": "lib/index.d.ts",
"style": "style/index.css",
"directories": {
"lib": "lib/"
},
"files": [
"lib/*.d.ts",
"lib/*.js.map",
"lib/*.js",
"schema/*.json",
"style/**/*.css",
"style/index.js",
"src/**/*.{ts,tsx}"
],
"scripts": {
"build": "tsc -b",
"clean": "rimraf lib && rimraf tsconfig.tsbuildinfo",
"watch": "tsc -b --watch"
},
"dependencies": {
"@jupyterlab/application": "^4.5.1",
"@jupyterlab/apputils": "^4.6.1",
"@jupyterlab/coreutils": "^6.5.1",
"@jupyterlab/property-inspector": "^4.5.1",
"@jupyterlab/settingregistry": "^4.5.1",
"@jupyterlab/statedb": "^4.5.1",
"@jupyterlab/statusbar": "^4.5.1",
"@jupyterlab/translation": "^4.5.1",
"@jupyterlab/ui-components": "^4.5.1",
"@lumino/algorithm": "^2.0.4",
"@lumino/commands": "^2.3.3",
"@lumino/coreutils": "^2.2.2",
"@lumino/disposable": "^2.1.5",
"@lumino/widgets": "^2.7.2",
"react": "^18.2.0"
},
"devDependencies": {
"rimraf": "~5.0.5",
"typescript": "~5.5.4"
},
"publishConfig": {
"access": "public"
},
"jupyterlab": {
"extension": true,
"schemaDir": "schema"
},
"styleModule": "style/index.js"
}

View File

@@ -0,0 +1,27 @@
{
"title": "Property Inspector",
"description": "Property Inspector Settings.",
"jupyter.lab.menus": {
"main": [
{
"id": "jp-mainmenu-view",
"items": [
{
"command": "property-inspector:show-panel",
"rank": 2
}
]
}
]
},
"jupyter.lab.shortcuts": [
{
"command": "property-inspector:show-panel",
"keys": ["Accel Shift U"],
"selector": "body"
}
],
"properties": {},
"additionalProperties": false,
"type": "object"
}

View File

@@ -0,0 +1,96 @@
{
"$schema": "http://json-schema.org/draft-07/schema",
"title": "JupyterLab Shell",
"description": "JupyterLab Shell layout settings.",
"jupyter.lab.menus": {
"context": [
{
"command": "sidebar:switch",
"selector": ".jp-SideBar .lm-TabBar-tab",
"rank": 500
}
]
},
"properties": {
"hiddenMode": {
"type": "string",
"title": "Hidden mode of main panel widgets",
"description": "The method for hiding widgets in the main dock panel. Using `scale` will increase performance on Firefox but don't use it with Chrome, Chromium or Edge. Similar performance gains are seen with `contentVisibility` which is only available in Chromium-based browsers.",
"enum": ["display", "scale", "contentVisibility"],
"default": "display"
},
"startMode": {
"enum": ["", "single", "multiple"],
"title": "Start mode: ``, `single` or `multiple`",
"description": "The mode under which JupyterLab should start. If empty, the mode will be imposed by the URL",
"default": ""
},
"layout": {
"type": "object",
"title": "Customize shell widget positioning",
"description": "Overrides default widget position in the application layout\ne.g. to position terminals in the right sidebar in multiple documents mode and in the down are in single document mode, {\n \"single\": { \"Terminal\": { \"area\": \"down\" } },\n \"multiple\": { \"Terminal\": { \"area\": \"right\" } }\n}.",
"properties": {
"single": {
"$ref": "#/definitions/layout",
"default": {
"Linked Console": { "area": "down" },
"Inspector": { "area": "down" },
"Cloned Output": { "area": "down" }
}
},
"multiple": { "$ref": "#/definitions/layout", "default": {} }
},
"default": {
"single": {
"Linked Console": { "area": "down" },
"Inspector": { "area": "down" },
"Cloned Output": { "area": "down" }
},
"multiple": {}
},
"additionalProperties": false
}
},
"additionalProperties": false,
"type": "object",
"definitions": {
"layout": {
"type": "object",
"properties": {
"[\\w-]+": {
"type": "object",
"properties": {
"area": {
"enum": ["main", "left", "right", "down"]
},
"options": {
"$ref": "#/definitions/options"
}
},
"additionalProperties": false
}
}
},
"options": {
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"split-top",
"split-left",
"split-right",
"split-bottom",
"tab-before",
"tab-after"
]
},
"rank": { "type": "number", "minimum": 0 },
"ref": {
"type": "string",
"minLength": 1
}
}
}
}
}

View File

@@ -0,0 +1,80 @@
{
"title": "Top Bar",
"description": "Top Bar settings.",
"jupyter.lab.toolbars": {
"TopBar": [
{
"name": "spacer",
"type": "spacer",
"rank": 50
}
]
},
"jupyter.lab.transform": true,
"properties": {
"toolbar": {
"title": "Top bar items",
"description": "Note: To disable a item,\ncopy it to User Preferences and add the\n\"disabled\" key. The following example will disable the user menu:\n{\n \"toolbar\": [\n {\n \"name\": \"user-menu\",\n \"disabled\": true\n }\n ]\n}\n\nTop bar description:",
"items": {
"$ref": "#/definitions/toolbarItem"
},
"type": "array",
"default": []
}
},
"additionalProperties": false,
"type": "object",
"definitions": {
"toolbarItem": {
"properties": {
"name": {
"title": "Unique name",
"type": "string"
},
"args": {
"title": "Command arguments",
"type": "object"
},
"command": {
"title": "Command id",
"type": "string",
"default": ""
},
"disabled": {
"title": "Whether the item is ignored or not",
"type": "boolean",
"default": false
},
"icon": {
"title": "Item icon id",
"description": "If defined, it will override the command icon",
"type": "string"
},
"label": {
"title": "Item label",
"description": "If defined, it will override the command label",
"type": "string"
},
"caption": {
"title": "Item caption",
"description": "If defined, it will override the command caption",
"type": "string"
},
"type": {
"title": "Item type",
"type": "string",
"enum": ["command", "spacer"]
},
"rank": {
"title": "Item rank",
"type": "number",
"minimum": 0,
"default": 50
}
},
"required": ["name"],
"additionalProperties": false,
"type": "object"
}
}
}

View File

@@ -0,0 +1,27 @@
{
"title": "Kernels",
"description": "Kernels and kernel sessions settings",
"jupyter.lab.setting-icon": "ui-components:kernel",
"jupyter.lab.setting-icon-label": "Kernel",
"additionalProperties": false,
"properties": {
"showStatusBarItem": {
"type": "boolean",
"title": "Show the status bar item",
"description": "Whether to show the running kernels item in the status bar",
"default": true
},
"commsOverSubshells": {
"type": "string",
"title": "Kernel Comms over subshells",
"description": "Whether comm messages should be sent to kernel subshells, if the kernel supports it.",
"default": "perCommTarget",
"oneOf": [
{ "const": "disabled", "title": "Disabled" },
{ "const": "perComm", "title": "One subshell per comm" },
{ "const": "perCommTarget", "title": "One subshell per comm-target" }
]
}
},
"type": "object"
}

View File

@@ -0,0 +1,53 @@
{
"title": "Notifications",
"description": "Notifications settings.",
"jupyter.lab.setting-icon": "ui-components:bell",
"jupyter.lab.menus": {
"main": [
{
"id": "jp-mainmenu-view",
"items": [
{
"type": "separator",
"rank": 9.9
},
{
"command": "apputils:display-notifications",
"rank": 9.92
},
{
"type": "separator",
"rank": 9.99
}
]
}
]
},
"additionalProperties": false,
"properties": {
"checkForUpdates": {
"title": "Check for JupyterLab updates",
"description": "Whether to check for newer versions of JupyterLab or not. It requires `fetchNews` to be set to Always (`true`) to be active. If `true`, it will make a request to a website.",
"type": "boolean",
"default": true
},
"doNotDisturbMode": {
"title": "Silence all notifications",
"description": "If `true`, no toast notifications will be automatically displayed.",
"type": "boolean",
"default": false
},
"fetchNews": {
"title": "Fetch official Jupyter news",
"description": "Whether to fetch news from the Jupyter news feed. If Always (`true`), it will make a request to a website.",
"type": "string",
"oneOf": [
{ "const": "true", "title": "Always" },
{ "const": "false", "title": "Never" },
{ "const": "none", "title": "Ask (None)" }
],
"default": "none"
}
},
"type": "object"
}

View File

@@ -0,0 +1,76 @@
{
"name": "@jupyterlab/apputils-extension",
"version": "4.5.1",
"description": "JupyterLab - Application Utilities Extension",
"homepage": "https://github.com/jupyterlab/jupyterlab",
"bugs": {
"url": "https://github.com/jupyterlab/jupyterlab/issues"
},
"repository": {
"type": "git",
"url": "https://github.com/jupyterlab/jupyterlab.git"
},
"license": "BSD-3-Clause",
"author": "Project Jupyter",
"sideEffects": [
"style/**/*"
],
"main": "lib/index.js",
"types": "lib/index.d.ts",
"style": "style/index.css",
"directories": {
"lib": "lib/"
},
"files": [
"lib/*.d.ts",
"lib/*.js.map",
"lib/*.js",
"style/*.css",
"style/images/*.svg",
"schema/*.json",
"style/index.js",
"src/**/*.{ts,tsx}"
],
"scripts": {
"build": "tsc -b",
"clean": "rimraf lib && rimraf tsconfig.tsbuildinfo",
"watch": "tsc -b --watch"
},
"dependencies": {
"@jupyterlab/application": "^4.5.1",
"@jupyterlab/apputils": "^4.6.1",
"@jupyterlab/coreutils": "^6.5.1",
"@jupyterlab/docregistry": "^4.5.1",
"@jupyterlab/mainmenu": "^4.5.1",
"@jupyterlab/rendermime-interfaces": "^3.13.1",
"@jupyterlab/services": "^7.5.1",
"@jupyterlab/settingregistry": "^4.5.1",
"@jupyterlab/statedb": "^4.5.1",
"@jupyterlab/statusbar": "^4.5.1",
"@jupyterlab/translation": "^4.5.1",
"@jupyterlab/ui-components": "^4.5.1",
"@jupyterlab/workspaces": "^4.5.1",
"@lumino/algorithm": "^2.0.4",
"@lumino/commands": "^2.3.3",
"@lumino/coreutils": "^2.2.2",
"@lumino/disposable": "^2.1.5",
"@lumino/domutils": "^2.0.4",
"@lumino/polling": "^2.1.5",
"@lumino/widgets": "^2.7.2",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-toastify": "^9.0.8"
},
"devDependencies": {
"rimraf": "~5.0.5",
"typescript": "~5.5.4"
},
"publishConfig": {
"access": "public"
},
"jupyterlab": {
"extension": true,
"schemaDir": "schema"
},
"styleModule": "style/index.js"
}

View File

@@ -0,0 +1,40 @@
{
"title": "Command Palette",
"description": "Command palette settings.",
"jupyter.lab.setting-icon": "ui-components:palette",
"jupyter.lab.setting-icon-label": "Command Palette",
"jupyter.lab.menus": {
"main": [
{
"id": "jp-mainmenu-view",
"items": [
{
"command": "apputils:activate-command-palette",
"rank": 0
},
{
"type": "separator",
"rank": 0
}
]
}
]
},
"jupyter.lab.shortcuts": [
{
"command": "apputils:activate-command-palette",
"keys": ["Accel Shift C"],
"selector": "body"
}
],
"properties": {
"modal": {
"title": "Modal Command Palette",
"description": "Whether the command palette should be modal or in the left panel.",
"type": "boolean",
"default": true
}
},
"type": "object",
"additionalProperties": false
}

View File

@@ -0,0 +1,31 @@
{
"title": "Print",
"description": "Print settings.",
"jupyter.lab.menus": {
"main": [
{
"id": "jp-mainmenu-file",
"items": [
{
"type": "separator",
"rank": 98
},
{
"command": "apputils:print",
"rank": 98
}
]
}
]
},
"jupyter.lab.shortcuts": [
{
"command": "apputils:print",
"keys": ["Accel P"],
"selector": "body"
}
],
"additionalProperties": false,
"properties": {},
"type": "object"
}

View File

@@ -0,0 +1,31 @@
{
"title": "HTML Sanitizer",
"description": "HTML Sanitizer settings.",
"jupyter.lab.setting-icon": "ui-components:html5",
"additionalProperties": false,
"properties": {
"allowedSchemes": {
"title": "Allowed URL Scheme",
"description": "Scheme allowed by the HTML sanitizer.",
"type": "array",
"uniqueItems": true,
"items": {
"type": "string"
},
"default": ["http", "https", "ftp", "mailto", "tel"]
},
"autolink": {
"type": "boolean",
"title": "Autolink URL replacement",
"description": "Whether to replace URLs with links or not.",
"default": true
},
"allowNamedProperties": {
"type": "boolean",
"title": "Allow named properties",
"description": "Whether to allow untrusted elements to include `name` and `id` attributes. These attributes are stripped by default to prevent DOM clobbering attacks.",
"default": false
}
},
"type": "object"
}

View File

@@ -0,0 +1,14 @@
{
"title": "Kernel dialogs",
"description": "Kernel dialogs settings.",
"additionalProperties": false,
"properties": {
"skipKernelRestartDialog": {
"title": "Skip kernel restart Dialog",
"description": "Whether the kernel restart confirmation dialog is skipped when restarting the kernel.",
"type": "boolean",
"default": false
}
},
"type": "object"
}

View File

@@ -0,0 +1,155 @@
{
"title": "Theme",
"jupyter.lab.setting-icon-label": "Theme Manager",
"jupyter.lab.menus": {
"main": [
{
"id": "jp-mainmenu-settings",
"items": [
{
"type": "submenu",
"submenu": {
"id": "jp-mainmenu-settings-apputilstheme",
"label": "Theme",
"items": [
{ "type": "separator" },
{
"command": "apputils:adaptive-theme"
},
{ "type": "separator" },
{
"command": "apputils:theme-scrollbars"
},
{ "type": "separator" },
{
"command": "apputils:incr-font-size",
"args": {
"key": "code-font-size"
}
},
{
"command": "apputils:decr-font-size",
"args": {
"key": "code-font-size"
}
},
{ "type": "separator" },
{
"command": "apputils:incr-font-size",
"args": {
"key": "content-font-size1"
}
},
{
"command": "apputils:decr-font-size",
"args": {
"key": "content-font-size1"
}
},
{ "type": "separator" },
{
"command": "apputils:incr-font-size",
"args": {
"key": "ui-font-size1"
}
},
{
"command": "apputils:decr-font-size",
"args": {
"key": "ui-font-size1"
}
}
]
},
"rank": 0
}
]
}
]
},
"description": "Theme manager settings.",
"type": "object",
"additionalProperties": false,
"definitions": {
"cssOverrides": {
"type": "object",
"additionalProperties": false,
"description": "The description field of each item is the CSS property that will be used to validate an override's value",
"properties": {
"code-font-family": {
"type": ["string", "null"],
"description": "font-family"
},
"code-font-size": {
"type": ["string", "null"],
"description": "font-size"
},
"content-font-family": {
"type": ["string", "null"],
"description": "font-family"
},
"content-font-size1": {
"type": ["string", "null"],
"description": "font-size"
},
"ui-font-family": {
"type": ["string", "null"],
"description": "font-family"
},
"ui-font-size1": {
"type": ["string", "null"],
"description": "font-size"
}
}
}
},
"properties": {
"theme": {
"type": "string",
"title": "Selected Theme",
"description": "Application-level visual styling theme. Ignored when Adaptive Theme is enabled.",
"default": "JupyterLab Light"
},
"adaptive-theme": {
"type": "boolean",
"title": "Adaptive Theme",
"description": "Synchronize visual styling theme with system settings",
"default": false
},
"preferred-light-theme": {
"type": "string",
"title": "Preferred Light Theme",
"description": "Application-level light visual styling theme. Ignored when Adaptive Theme is disabled.",
"default": "JupyterLab Light"
},
"preferred-dark-theme": {
"type": "string",
"title": "Preferred Dark Theme",
"description": "Application-level dark visual styling theme. Ignored when Adaptive Theme is disabled.",
"default": "JupyterLab Dark"
},
"theme-scrollbars": {
"type": "boolean",
"title": "Scrollbar Theming",
"description": "Enable/disable styling of the application scrollbars",
"default": false
},
"overrides": {
"title": "Theme CSS Overrides",
"description": "Override theme CSS variables by setting key-value pairs here",
"$ref": "#/definitions/cssOverrides",
"default": {
"code-font-family": null,
"code-font-size": null,
"content-font-family": null,
"content-font-size1": null,
"ui-font-family": null,
"ui-font-size1": null
}
}
}
}

View File

@@ -0,0 +1,35 @@
{
"title": "Shortcuts Help",
"description": "Shortcut help settings.",
"jupyter.lab.menus": {
"main": [
{
"id": "jp-mainmenu-help",
"items": [
{
"type": "separator",
"rank": 0.1
},
{
"command": "apputils:display-shortcuts",
"rank": 0.1
},
{
"type": "separator",
"rank": 0.1
}
]
}
]
},
"jupyter.lab.shortcuts": [
{
"command": "apputils:display-shortcuts",
"keys": ["Accel Shift H"],
"selector": "body"
}
],
"properties": {},
"type": "object",
"additionalProperties": false
}

View File

@@ -0,0 +1,55 @@
{
"name": "@jupyterlab/cell-toolbar-extension",
"version": "4.5.1",
"description": "Extension for cell toolbar adapted from jlab-enhanced-cell-toolbar",
"homepage": "https://github.com/jupyterlab/jupyterlab",
"bugs": {
"url": "https://github.com/jupyterlab/jupyterlab/issues"
},
"repository": {
"type": "git",
"url": "https://github.com/jupyterlab/jupyterlab.git"
},
"license": "BSD-3-Clause",
"author": "Project Jupyter",
"sideEffects": [
"style/**/*"
],
"main": "lib/index.js",
"types": "lib/index.d.ts",
"style": "style/index.css",
"directories": {
"lib": "lib/"
},
"files": [
"lib/**/*.{d.ts,eot,gif,html,jpg,js,js.map,json,png,svg,woff2,ttf}",
"schema/*.json",
"style/**/*.{css,eot,gif,html,jpg,json,png,svg,woff2,ttf}",
"style/index.js",
"src/**/*.{ts,tsx}"
],
"scripts": {
"build": "tsc -b",
"clean": "rimraf lib && rimraf tsconfig.tsbuildinfo",
"watch": "tsc -b --watch"
},
"dependencies": {
"@jupyterlab/application": "^4.5.1",
"@jupyterlab/apputils": "^4.6.1",
"@jupyterlab/cell-toolbar": "^4.5.1",
"@jupyterlab/settingregistry": "^4.5.1",
"@jupyterlab/translation": "^4.5.1"
},
"devDependencies": {
"rimraf": "~5.0.5",
"typescript": "~5.5.4"
},
"publishConfig": {
"access": "public"
},
"jupyterlab": {
"extension": true,
"schemaDir": "schema"
},
"styleModule": "style/index.js"
}

View File

@@ -0,0 +1,101 @@
{
"$schema": "http://json-schema.org/draft-07/schema",
"title": "Cell Toolbar",
"description": "Cell Toolbar Settings.",
"jupyter.lab.toolbars": {
"Cell": [
{
"name": "duplicate-cell",
"command": "notebook:duplicate-below"
},
{ "name": "move-cell-up", "command": "notebook:move-cell-up" },
{ "name": "move-cell-down", "command": "notebook:move-cell-down" },
{
"name": "insert-cell-above",
"command": "notebook:insert-cell-above"
},
{
"name": "insert-cell-below",
"command": "notebook:insert-cell-below"
},
{
"command": "notebook:delete-cell",
"icon": "ui-components:delete",
"name": "delete-cell"
}
]
},
"jupyter.lab.transform": true,
"properties": {
"showToolbar": {
"title": "Show cell toolbar",
"description": "Show a toolbar inside the active cell, if there is enough room for one",
"type": "boolean",
"default": true
},
"toolbar": {
"title": "List of toolbar items",
"description": "An item is defined by a 'name', a 'command' name, and an 'icon' name",
"type": "array",
"items": {
"$ref": "#/definitions/toolbarItem"
},
"default": []
}
},
"additionalProperties": false,
"type": "object",
"definitions": {
"toolbarItem": {
"properties": {
"name": {
"title": "Unique name",
"type": "string"
},
"args": {
"title": "Command arguments",
"type": "object"
},
"command": {
"title": "Command id",
"type": "string",
"default": ""
},
"disabled": {
"title": "Whether the item is ignored or not",
"type": "boolean",
"default": false
},
"icon": {
"title": "Item icon id",
"description": "If defined, it will override the command icon",
"type": "string"
},
"label": {
"title": "Item label",
"description": "If defined, it will override the command label",
"type": "string"
},
"caption": {
"title": "Item caption",
"description": "If defined, it will override the command caption",
"type": "string"
},
"type": {
"title": "Item type",
"type": "string",
"enum": ["command", "spacer"]
},
"rank": {
"title": "Item rank",
"type": "number",
"minimum": 0,
"default": 50
}
},
"required": ["name"],
"additionalProperties": false,
"type": "object"
}
}
}

View File

@@ -0,0 +1,63 @@
{
"name": "@jupyterlab/celltags-extension",
"version": "4.5.1",
"description": "An extension for manipulating tags in cell metadata",
"keywords": [
"jupyter",
"jupyterlab",
"jupyterlab-extension"
],
"homepage": "https://github.com/jupyterlab/jupyterlab",
"bugs": {
"url": "https://github.com/jupyterlab/jupyterlab/issues"
},
"repository": {
"type": "git",
"url": "https://github.com/jupyterlab/jupyterlab.git"
},
"license": "BSD-3-Clause",
"author": "Project Jupyter",
"sideEffects": [
"style/*.css",
"style/index.js"
],
"main": "lib/index.js",
"types": "lib/index.d.ts",
"style": "style/index.css",
"directories": {
"lib": "lib/"
},
"files": [
"lib/*.{d.ts,js,js.map}",
"style/*.css",
"style/index.js",
"src/**/*.{ts,tsx}",
"schema/*.json"
],
"scripts": {
"build": "tsc",
"clean": "rimraf lib && rimraf tsconfig.tsbuildinfo",
"watch": "tsc -b --watch"
},
"dependencies": {
"@jupyterlab/application": "^4.5.1",
"@jupyterlab/notebook": "^4.5.1",
"@jupyterlab/translation": "^4.5.1",
"@jupyterlab/ui-components": "^4.5.1",
"@lumino/algorithm": "^2.0.4",
"@rjsf/utils": "^5.13.4",
"react": "^18.2.0"
},
"devDependencies": {
"rimraf": "~5.0.5",
"typescript": "~5.5.4"
},
"publishConfig": {
"access": "public"
},
"jupyterlab": {
"extension": true,
"schemaDir": "schema"
},
"styleModule": "style/index.js"
}

View File

@@ -0,0 +1,33 @@
{
"type": "object",
"title": "Common tools",
"description": "Setting for the common tools",
"jupyter.lab.metadataforms": [
{
"id": "commonToolsSection",
"label": "Common tools",
"metadataSchema": {
"type": "object",
"properties": {
"/tags": {
"title": "Cell tag",
"type": "array",
"default": [],
"items": {
"type": "string"
}
}
}
},
"uiSchema": {
"ui:order": ["_CELL-TOOL", "/tags", "*"]
},
"metadataOptions": {
"/tags": {
"customRenderer": "@jupyterlab/celltags-extension:plugin.renderer"
}
}
}
],
"additionalProperties": false
}

View File

@@ -0,0 +1,75 @@
{
"name": "@jupyterlab/codemirror-extension",
"version": "4.5.1",
"description": "JupyterLab - CodeMirror Provider Extension",
"homepage": "https://github.com/jupyterlab/jupyterlab",
"bugs": {
"url": "https://github.com/jupyterlab/jupyterlab/issues"
},
"repository": {
"type": "git",
"url": "https://github.com/jupyterlab/jupyterlab.git"
},
"license": "BSD-3-Clause",
"author": "Project Jupyter",
"sideEffects": [
"style/**/*.css",
"style/index.js"
],
"main": "lib/index.js",
"types": "lib/index.d.ts",
"style": "style/index.css",
"directories": {
"lib": "lib/"
},
"files": [
"lib/*.d.ts",
"lib/*.js.map",
"lib/*.js",
"schema/*.json",
"style/**/*.css",
"style/index.js",
"src/**/*.{ts,tsx}"
],
"scripts": {
"build": "tsc -b",
"clean": "rimraf lib && rimraf tsconfig.tsbuildinfo",
"watch": "tsc -b --watch"
},
"dependencies": {
"@codemirror/commands": "^6.8.1",
"@codemirror/lang-markdown": "^6.3.2",
"@codemirror/language": "^6.11.0",
"@codemirror/legacy-modes": "^6.5.1",
"@codemirror/search": "^6.5.10",
"@codemirror/view": "^6.38.1",
"@jupyter/ydoc": "^3.1.0",
"@jupyterlab/application": "^4.5.1",
"@jupyterlab/apputils": "^4.6.1",
"@jupyterlab/codeeditor": "^4.5.1",
"@jupyterlab/codemirror": "^4.5.1",
"@jupyterlab/notebook": "^4.5.1",
"@jupyterlab/settingregistry": "^4.5.1",
"@jupyterlab/statusbar": "^4.5.1",
"@jupyterlab/translation": "^4.5.1",
"@jupyterlab/ui-components": "^4.5.1",
"@lumino/coreutils": "^2.2.2",
"@lumino/widgets": "^2.7.2",
"@rjsf/utils": "^5.13.4",
"@rjsf/validator-ajv8": "^5.13.4",
"react": "^18.2.0"
},
"devDependencies": {
"@types/react": "^18.0.26",
"rimraf": "~5.0.5",
"typescript": "~5.5.4"
},
"publishConfig": {
"access": "public"
},
"jupyterlab": {
"extension": true,
"schemaDir": "schema"
},
"styleModule": "style/index.js"
}

View File

@@ -0,0 +1,85 @@
{
"jupyter.lab.setting-icon": "ui-components:text-editor",
"jupyter.lab.setting-icon-label": "CodeMirror",
"jupyter.lab.shortcuts": [
{
"command": "codemirror:delete-line",
"keys": ["Accel D"],
"selector": ".cm-content"
},
{
"command": "codemirror:delete-line",
"keys": ["Accel Shift K"],
"selector": ".cm-content"
},
{
"command": "codemirror:toggle-block-comment",
"keys": ["Alt A"],
"selector": ".cm-content"
},
{
"command": "codemirror:toggle-comment",
"keys": ["Accel /"],
"selector": ".cm-content"
},
{
"command": "codemirror:select-next-occurrence",
"keys": ["Accel Shift D"],
"selector": ".cm-content"
}
],
"jupyter.lab.menus": {
"main": [
{
"id": "jp-mainmenu-view",
"items": [
{
"type": "submenu",
"rank": 10,
"submenu": {
"id": "jp-mainmenu-codefold",
"label": "Code Folding",
"items": [
{
"command": "codemirror:fold-current",
"rank": 1
},
{
"command": "codemirror:unfold-current",
"rank": 2
},
{
"command": "codemirror:fold-subregions",
"rank": 3
},
{
"command": "codemirror:unfold-subregions",
"rank": 4
},
{
"command": "codemirror:fold-all",
"rank": 5
},
{
"command": "codemirror:unfold-all",
"rank": 6
}
]
}
}
]
}
]
},
"title": "CodeMirror",
"description": "Text editor settings for all CodeMirror editors.",
"properties": {
"defaultConfig": {
"default": {},
"title": "Default editor configuration",
"description": "Base configuration used by all CodeMirror editors.",
"type": "object"
}
},
"type": "object"
}

View File

@@ -0,0 +1,106 @@
{
"title": "Inline Completer",
"description": "Inline completer settings.",
"jupyter.lab.setting-icon": "completer:inline",
"jupyter.lab.setting-icon-label": "Inline Completer",
"jupyter.lab.transform": true,
"jupyter.lab.shortcuts": [
{
"command": "inline-completer:next",
"keys": ["Alt ]"],
"selector": ".jp-mod-completer-enabled",
"preventDefault": false
},
{
"command": "inline-completer:previous",
"keys": ["Alt ["],
"selector": ".jp-mod-completer-enabled",
"preventDefault": false
},
{
"command": "inline-completer:accept",
"keys": ["Tab"],
"selector": ".jp-mod-inline-completer-active"
},
{
"command": "inline-completer:accept",
"keys": ["Alt End"],
"selector": ".jp-mod-inline-completer-active"
},
{
"command": "inline-completer:invoke",
"keys": ["Alt \\"],
"selector": ".jp-mod-completer-enabled",
"preventDefault": false
}
],
"properties": {
"providers": {
"title": "Inline completion providers",
"type": "object",
"default": {}
},
"showWidget": {
"title": "Show widget",
"description": "When to show the inline completer widget.",
"type": "string",
"oneOf": [
{ "const": "always", "title": "Always" },
{ "const": "onHover", "title": "On hover" },
{ "const": "never", "title": "Never" }
],
"default": "onHover"
},
"showShortcuts": {
"title": "Show shortcuts in the widget",
"description": "Whether to show shortcuts in the inline completer widget.",
"type": "boolean",
"default": true
},
"suppressIfTabCompleterActive": {
"title": "Suppress when the tab completer is active",
"description": "Whether to suppress the inline completer when the tab completer suggestions are shown.",
"type": "boolean",
"default": true
},
"streamingAnimation": {
"title": "Streaming animation",
"description": "Transition effect used when streaming tokens from model.",
"type": "string",
"oneOf": [
{ "const": "none", "title": "None" },
{ "const": "uncover", "title": "Uncover" }
],
"default": "uncover"
},
"minLines": {
"title": "Reserve lines for inline completion",
"description": "Number of lines to reserve for the ghost text with inline completion suggestion.",
"type": "number",
"default": 0,
"minimum": 0
},
"maxLines": {
"title": "Limit inline completion lines",
"description": "Number of lines of inline completion to show before collapsing. Setting zero disables the limit.",
"type": "number",
"default": 0,
"minimum": 0
},
"reserveSpaceForLongest": {
"title": "Reserve space for the longest candidate",
"description": "When multiple completions are returned, reserve blank space for up to as many lines as in the longest completion candidate to avoid resizing editor when cycling between the suggestions.",
"type": "boolean",
"default": false
},
"editorResizeDelay": {
"title": "Editor resize delay",
"description": "When an inline completion gets cancelled the editor may change its size rapidly. When typing in the editor, the completions may get dismissed frequently causing a noticeable jitter of the editor height. Adding a delay prevents the jitter on typing. The value should be in milliseconds.",
"type": "number",
"default": 1000,
"minimum": 0
}
},
"additionalProperties": false,
"type": "object"
}

View File

@@ -0,0 +1,50 @@
{
"title": "Code Completion",
"description": "Code Completion settings.",
"jupyter.lab.setting-icon": "completer:widget",
"jupyter.lab.setting-icon-label": "Code Completer",
"jupyter.lab.transform": true,
"properties": {
"availableProviders": {
"title": "Completion providers rank setting.",
"description": "Providers with higher rank will be shown before the ones with lower rank, providers with negative rank are disabled.",
"type": "object",
"patternProperties": {
"^.*$": {
"type": "integer"
}
},
"additionalProperties": false,
"default": {
"CompletionProvider:context": 500,
"CompletionProvider:kernel": 550
}
},
"providerTimeout": {
"title": "Default timeout for a provider.",
"description": "If a provider can not return the response for a completer request before timeout, the result of this provider will be ignored. Value is in millisecond",
"type": "number",
"default": 1000
},
"showDocumentationPanel": {
"title": "Show the documentation panel.",
"description": "Documentation panel setting.",
"type": "boolean",
"default": false
},
"autoCompletion": {
"title": "Enable autocompletion.",
"description": "Autocompletion setting.",
"type": "boolean",
"default": false
},
"suppressIfInlineCompleterActive": {
"title": "Suppress when the inline completer is active",
"description": "Whether to suppress the tab completer when inline completions are presented.",
"type": "boolean",
"default": true
}
},
"additionalProperties": false,
"type": "object"
}

View File

@@ -0,0 +1,63 @@
{
"name": "@jupyterlab/completer-extension",
"version": "4.5.1",
"description": "JupyterLab - Completer Extension",
"homepage": "https://github.com/jupyterlab/jupyterlab",
"bugs": {
"url": "https://github.com/jupyterlab/jupyterlab/issues"
},
"repository": {
"type": "git",
"url": "https://github.com/jupyterlab/jupyterlab.git"
},
"license": "BSD-3-Clause",
"author": "Project Jupyter",
"sideEffects": [
"style/**/*.css",
"style/index.js"
],
"main": "lib/index.js",
"types": "lib/index.d.ts",
"style": "style/index.css",
"directories": {
"lib": "lib/"
},
"files": [
"lib/*.d.ts",
"lib/*.js.map",
"lib/*.js",
"schema/*.json",
"style/**/*.css",
"style/index.js",
"src/**/*.{ts,tsx}"
],
"scripts": {
"build": "tsc -b",
"clean": "rimraf lib && rimraf tsconfig.tsbuildinfo",
"watch": "tsc -b --watch"
},
"dependencies": {
"@jupyterlab/application": "^4.5.1",
"@jupyterlab/codeeditor": "^4.5.1",
"@jupyterlab/completer": "^4.5.1",
"@jupyterlab/settingregistry": "^4.5.1",
"@jupyterlab/translation": "^4.5.1",
"@jupyterlab/ui-components": "^4.5.1",
"@lumino/commands": "^2.3.3",
"@lumino/coreutils": "^2.2.2",
"@rjsf/utils": "^5.13.4",
"react": "^18.2.0"
},
"devDependencies": {
"rimraf": "~5.0.5",
"typescript": "~5.5.4"
},
"publishConfig": {
"access": "public"
},
"jupyterlab": {
"extension": true,
"schemaDir": "schema"
},
"styleModule": "style/index.js"
}

View File

@@ -0,0 +1,14 @@
{
"title": "Console Completer",
"description": "Console completer settings.",
"jupyter.lab.shortcuts": [
{
"command": "completer:invoke-console",
"keys": ["Tab"],
"selector": ".jp-CodeConsole-promptCell .jp-mod-completer-enabled:not(.jp-mod-at-line-beginning)"
}
],
"properties": {},
"additionalProperties": false,
"type": "object"
}

Some files were not shown because too many files have changed in this diff Show More