Sublime Forum

Problem with new style syntax package

#1

In the process of getting sublimerepl working with my version of scheme, something seems to have broken.

However, everything seems to work:

  • I get good syntax behavior for Scheme source files
  • the proper repl launches and works with good highlighting of text in the repl
  • I can send source selections to the repl and they run as expected

But, two message dialogs appear when I start SublimeText with an error relating to the syntax “package” thingee.

The message:

Error loading syntax file "Packages/Scheme.sublime-package": Error parsing plist xml: expected < in file Packages/Scheme.sublime-package on line: 1

I also get this message when I launch the Gambit repl even though the repl does launch and seems correct. I don’t know what file this one refers to

UPDATE: I got rid of this. This was a user settings file with bad, unnecessary content–I got rid of the file and got rid of the message.

Error trying to parse settings: Expected value in Packages/User/SublimeREPL.sublime-settings:2:1  

There are many layers to this problem.

  1. I had to change the settings for SublimeRepl for Scheme because the old style Packages/Scheme/Scheme.tmLanguage (text mate packages) have been replaced with new style Scheme.sublime-package. For the Gambit version of Scheme, I have the following settings in SublimeRepl Main.sublime-menu. I am including the whole thing but I only changed settings for the 2nd “child” of Scheme, which I set to Gambit. I also changed the syntax map values to refer to the new syntax definition for Scheme, as the old tm version no longer exists.
[
     {
        "id": "tools",
        "children":
        [{
            "caption": "SublimeREPL",
            "mnemonic": "R",
            "id": "SublimeREPL",
            "children":
            [
                {"caption": "Scheme",
                 "id": "Scheme",

                 "children":[
                    {"command": "repl_open",
                     "caption": "Scheme",
                     "id": "repl_scheme",
                     "mnemonic": "S",
                     "args": {
                        "type": "subprocess",
                        "encoding": "utf8",
                        "external_id": "scheme",
                        "cmd": {"linux": ["scheme"],
                                "osx": ["scheme"],
                                "windows": ["scheme"]},
                        "soft_quit": "\nexit\n",
                        "cwd": "$folder",
                        "cmd_postfix": "\n",
                        "extend_env": {"INSIDE_EMACS": "1"},
                        "syntax": "Packages/Scheme.sublime-package"
                        }
                    },
                    {"command": "repl_open",
                     "caption": "Gambit",
                     "id": "repl_gambit",
                     "mnemonic": "G",
                     "args": {
                        "type": "subprocess",
                        "encoding": "utf8",
                        "external_id": "scheme",
                        "cmd": {"linux": ["gosh", "-i"],
                                "osx": ["gsi", "-i"],
                                "windows": ["gosh", "-i"]},
                        "soft_quit": "\n(exit)\n",
                        "cwd": "$folder",
                        "cmd_postfix": "\n",
                        "extend_env": {"INSIDE_EMACS": "1"},
                        "syntax": "Packages/Scheme.sublime-package"
                        }
                    },
                    {"command": "repl_open",
                     "caption": "Petite Chez Scheme",
                     "id": "repl_petite",
                     "mnemonic": "P",
                     "args": {
                        "type": "subprocess",
                        "encoding": "utf8",
                        "external_id": "petite",
                        "cmd": {"linux": ["petite"],
                                "osx": ["petite"],
                                "windows": ["petite"]},
                        "soft_quit": "\n(exit)\n",
                        "cwd": "$folder",
                        "cmd_postfix": "\n",
                        "extend_env": {"INSIDE_EMACS": "1"},
                        "syntax": "Packages/Scheme.sublime-package"
                        }
                    }
                ]}
            ]
        }]
    }
]
  1. There are multiple package directories because I started back in the day of Sublimetext 2. Now I have multiple package directories across v 3 and v 4.

I have these package directories:

~/Library/Application Support/Sublime Text 3

which contains:

Installed Packages and
Packages

and

/Applications/Sublime Text 4/Contents/MacOS/Packages
  1. Probs 1 and 2 interact because the settings for SublimeRepl have a syntax entry. Since I don’t know what “Packages” maps to as there are 2 such directories (one for SublimeText 4 and one for SublimeText 3, which also supports v 4) I don’t know which one my running copy of SublimeText 4 sees. So, I put Scheme.sublime-package in both places.

  2. The error message above refers to line 1 of the plist xml in Scheme.sublime-package. But, of course, I can’t actually see the plist because sublime-package files are compressed. I used PackageResourceViewer to extract the package. This expands the pieces, but the plist itself doesn’t appear because that’s what got “blown apart” into files and directories in the package (I am going to spare you listing all of those). All the pieces seem to be ok and seem to work as a language package.

So what does the error message refer to? What do I do to fix it? Is it a problem with the Packages directory configuration, something in SublimeRepl settings? Or something wrong with the syntax package?

Sorry for the long message, but SublimeText packages have become hairballs over the years.

0 Likes

#2

The message points to a json parse error in your custom SublimeREPL.sublime-settings.

Settings support a single top-level json object, only.

All user packages and settings are located in

ST2: ~/Library/Application Support/Sublime Text 2
ST3: ~/Library/Application Support/Sublime Text 3
ST4: ~/Library/Application Support/Sublime Text

If you upgraded from ST3 to ST4, ST4 continues to use ST3’s data directory.

I’d recomment to change the folder name by removing the 3 suffix at some point.

The /Applications/Sublime Text 4/Contents/MacOS/ folder should however kept untouched as it contains the application. It is likely to be replaced by updates.

0 Likes

#3

I know that but it doesn’t help me. I am not responsible for Scheme.sublime-package and I have not and cannot modify it. Second, it is a compressed archive package so, as I said above I cannot see the plist text in any file of the package. When the package is expanded, there are many files and none of them contain plist text.

And what about the directory called “Installed Packages”? Is this still used?

So, I still need some help if possible…

0 Likes

#4

Yes; it’s the place where packages installed as sublime-package files are loaded from, and is the place where Package Control will install things.

sublime-package files are just zip files with a different extension; if you want to look inside one you can duplicate and rename it and look that way, or just use View Package File to look inside (assuming the package is installed).

I don’t know what you mean by “plist text” but the PList XML files have extensions of tmPreferences, not XML (if that is what you’re looking for).

0 Likes

#5

I don’t think Packages/User/SublimeREPL.sublime-settings:2:1 you were refering to in a former post (and I gave an answer for), is part of Scheme.sublime-package.


Also, I don’t see any error messages or something not working with regards to Scheme.sublime-package. Syntax, completions, … everything just fine.

So the issues you are facing are most likely not caused by the package.

Wait … I just see:

Error loading syntax file "Packages/Scheme.sublime-package"

It seems something tries to directly load the sublime-package file as syntax definition, which obviously doesn’t work!

0 Likes

#6

So, in the Sublimerepl config there is an argument for “syntax”, which must refer to a syntax file.

How should I fill that out?

Here:

{"command": "repl_open",
        "caption": "Gambit",
        "id": "repl_gambit",
         "mnemonic": "G",
         "args": {
               "type": "subprocess",
               "encoding": "utf8",
                "external_id": "gambit",
                "cmd": {"linux": ["gosh", "-i"],
                             "osx": ["gsi", "-i"],
                             "windows": ["gosh", "-i"]},
                 "soft_quit": "\n(exit)\n",
                 "cwd": "$folder",
                 "cmd_postfix": "\n",
                 "extend_env": {"INSIDE_EMACS": "1"},
                 "syntax": "Installed Packages/Scheme.sublime-package"
             }
   },

For comparison, here is the config for sbcl in the Common Lisp group:

{"command": "repl_open",
        "caption": "SBCL",
        "id": "repl_sbcl",
        "mnemonic": "S",
        "args": {
               "type": "subprocess",
               "encoding": "utf8",
               "external_id": "lisp",
               "cmd": ["sbcl"],
               "soft_quit": "\n(sb-ext:exit)\n",
               "cwd": "$folder",
               "cmd_postfix": "\n",
               "syntax": "Packages/Lisp/Lisp.tmLanguage"
             }
  }
0 Likes

#7

Instead of

"syntax": "Installed Packages/Scheme.sublime-package"

you probably want to set

"syntax": "Scheme.sublime-syntax"
0 Likes

#8

That looks like a good way. Will Sublime Text find it in the compressed archive?

I expanded the package and put it in Packages and set the argument to:

"Packages/Scheme/syntax/Scheme.sublime-syntax"

That got rid of the message.

I think you are saying I didn’t need to expand the package.

Thanks for your help.

0 Likes

#9

But, this breaks the binding between the syntax setting for a file (“Scheme”) and the repl. Also true when I use your approach.

Results in error

Cannot find repl for 'scheme'

Seems like circular errors that can’t be fixed. When the package sublimerepl was written–and no maintenance for several years as it basically works–all the syntaxes were stand-alone TextMate bundles. Now, syntaxes are .sublime-package and might be embedded within larger packages so sublimerepl can’t follow the file reference properly.

I guess I’ll just have to put up with a spurious error dialog. Just dismiss it and keep working as everything works. Not sure how to get back to how I had it, but somehow I’ll get there.

This sort of fragility and cross-package interactions probably has put a lot of people off Sublime Text and a flight to Visual Studio Code. It’s too bad…

0 Likes

#10

I’ve never used SublimeREPL, thus can’t say much about its state. There’s however nothing sublimehq could do about keeping open source plugins driven by volunteers maintained forever. That’s not ideal, but how open source works. Someone drops some stuff to public as “this is my perfect solution” and shortly after drops it as not being interested in it anymore. I see the same complains with Kodi and other very popular open source programs, which are not backed by a multi-billion dollar company.

That said, I am able to start a REPL using your command snippet without any error messages with only the syntax name assigned as proposed. So again the error seem not to be located in one of the packages involved.

0 Likes

#11

The problem is I can’t evaluate or transfer text from a source file to the repl because the binding between the syntax of the source file and the sublimerepl commands (as described in the config file) is broken.

Frustrated because I can’t get back to my previous state in which I received a spurious error dialog, but everything worked.

Here are the two config files for Scheme for Sublimerepl. I have also expanded Scheme.sublime-package and moved the resulting folder to ~/Library/Application Support/Sublime Text 3/Packages while the unexpanded package remains as Scheme.sublime-package in ~/Library/Application Support/Sublime Text 3/Installed Packages. I assume the duplication doesn’t matter as there is a search order that Sublime Text follows–unless some reference is made to a fully qualified path.

It’s quite frustrating when “HQ” simply abdicates. Your success depends on the top 10-30 packages that are the most downloaded and most used. You have a coding editor. Having a reliable way to run such code is essential. The “Build” process only provides one run and a return message. A repl or a terminal provides a more complete experience. Sublime Repl is in the top 10 packages (if you exclude Package Control itself).

You can’t be responsible for all packages. I share your frustration with “volunteer” open source. Open source seems so virtuous and holy. But, no pay checks result in low investment and low maintenance. Only perhaps 50 super important open source projects with corporate support (either work by employees or explicit grants or a “business model”) represent high quality work (see Apache supported projects, Python, Julia, GNU projects, WordPress, major compilers/interpreters). Others languish or never really attain usability at all.

You can identify the most important Sublime Text packages by various means. You could–of your own volition–choose to make sure some minute subset of packages work, are updated to work with new Sublime Text releases and flag these as “supported”.

I am sure that the problem I am experiencing is based on where packages are found, the fact that there are now two kinds of packages, and my own errors in setting config options for one of the packages. But, with minimal documentation and the fragility of 3 files that must be coordinated, I ff’ed up. My fault. But, seemingly no solutions.

I am going to uninstall scheme and sublime repl and start over. Along the way I will break things that used to work like Python. But, I don’t use Sublime Text for Python any more so that’s ok.

0 Likes

#12

I uninstalled and re-installed both packages. It’s only worse now:

First error:

Error loading syntax file "Installed Packages/Scheme.sublime-package": Unable to open Installed Packages/Scheme.sublime-package

But, here is the path to exactly that archive:

~/Library/Application Support/Sublime Text 3/Installed Packages/Scheme.sublime-package

Looks like a match to me.

Second error:
This is a Python related error attempting to process the json files:

ValueError('unsupported pickle protocol: 5',)

Never seen this one before. Pickle attempts to open saved Python data structures. Not aware I’ve done that. I suspect a failure trying to break open the archive Scheme.sublime-package

it turns out the same error occurs attempting to run the sbcl repl. This always used to work with NO MANUAL ALTERATION WHATSOEVER. So, something has broken in sublimerepl from the version I installed 2+ years ago and the version that is now available.

At my wit’s end. I’ve spent hours on this.

0 Likes

#13

I uninstalled and re-installed Sublime Text.

I fixed the pickle message by aliasing python to python3.

Now the repl launches.

But, I still cannot use the commands that send source text to the repl.

I am back to this problem:

Error loading syntax file "Installed Packages/Scheme.sublime-package": Unable to open Installed Packages/Scheme.sublime-package

Apparently, Sublime simply can’t open the archive of the package to obtain a file there-in. The syntax file is NOT at the top-level within the package. It is in directory ‘syntax’ and has a different name.

I will again try expanding the packaging, moving it to Packages and loading the syntax file with a fully qualified path.

with this entry ```“syntax”: “Scheme.sublime-syntax”```` I still get Cannot find repl for ‘scheme’.

with this entry "syntax": "Packages/Scheme/syntax/Scheme.sublime-syntax" it still won’t work.

Not sure what to do now. I think I’ve done more than I should have had to and tried nearly every remedy. it just won’t work even though it used to work.

I purchased Sublime Text 2. I purchased the paid upgrade to Sublime Text 4. I purchased Sublime Merge. I am a paying customer. I am dissatisfied with the support being provided. You don’t get to hide behind “it’s open source. I’m just a volunteer.” You are “HQ”.

0 Likes

#14

Now I am back to this problem, which I thought I had fixed. Need explicit instructions for setting the specific version of Python used by Sublime Text internally. It must be > 3.8 to use Pickle type 5.

0 Likes

#15

Here is the console output. Sublime Text is clearly using Python 3.3. There was another package, Slyblime, that contained a command to switch it to Python 3.8. Surely there is built-in way to do that.

startup, version: 4152 osx arm64 channel: stable
executable: /Applications/Sublime Text.app/Contents/MacOS/sublime_text
application: /Applications/Sublime Text.app
working dir: /
packages path: /Users/lewis/Library/Application Support/Sublime Text 3/Packages
state path: /Users/lewis/Library/Application Support/Sublime Text 3/Local
zip path: /Applications/Sublime Text.app/Contents/MacOS/Packages
zip path: /Users/lewis/Library/Application Support/Sublime Text 3/Installed Packages
ignored_packages: ["Vintage"]
pre session restore time: 0.198681
OpenGL Context Information:
  GL API Version: 4.1 Metal - 83.1
  GLSL Version: 4.10
  Vendor: Apple
  Renderer: Apple M1 Max
startup time: 0.251066
first paint time: 0.290708
environment variables loaded using: /bin/zsh -l
reloading python 3.3 plugin 0_package_control_loader.00-package_control
reloading plugin Default.arithmetic
reloading python 3.3 plugin 0_package_control_loader.01-pygments
reloading plugin Default.auto_indent_tag
reloading python 3.3 plugin 0_package_control_loader.50-backrefs
reloading python 3.3 plugin 0_package_control_loader.50-markupsafe
reloading plugin Default.block
reloading python 3.3 plugin 0_package_control_loader.50-pymdownx
reloading python 3.3 plugin 0_package_control_loader.50-python-markdown
reloading python 3.3 plugin 0_package_control_loader.50-pyyaml
reloading python 3.3 plugin 0_package_control_loader.51-python-jinja2
reloading python 3.3 plugin 0_package_control_loader.55-mdpopups
reloading python 3.3 plugin Advanced CSV.csvplugin
reloading plugin Default.colors
reloading plugin Default.comment
reloading plugin Default.convert_color_scheme
reloading plugin Default.convert_syntax
=== NumPy disabled, using TinyNumPy instead ===
To enable cell evaluation using the full NumPy, download NumPy from:
    https://pypi.python.org/pypi/numpy
and install it into Sublime Text's Packages directory.
For information on the features and limitations of TinyNumPy, visit:
    https://github.com/wadetb/tinynumpy
======================
reloading python 3.3 plugin Auto Refresh.AutoRefresh
reloading plugin Default.copy_path
reloading python 3.3 plugin BracketGuard.BracketGuard
reloading plugin Default.echo
reloading plugin Default.exec
reloading python 3.3 plugin BracketHighlighter.bh_core
reloading plugin Default.fold
reloading plugin Default.font
reloading plugin Default.goto_line
reloading plugin Default.history_list
reloading plugin Default.html_print
reloading plugin Default.indentation
reloading plugin Default.install_package_control
reloading plugin Default.keymap
reloading plugin Default.kill_ring
reloading plugin Default.mark
reloading plugin Default.new_templates
reloading plugin Default.open_context_url
reloading plugin Default.open_in_browser
reloading plugin Default.pane
reloading plugin Default.paragraph
reloading plugin Default.paste_from_history
reloading plugin Default.profile
reloading plugin Default.quick_panel
reloading plugin Default.rename
reloading plugin Default.run_syntax_tests
reloading plugin Default.save_on_focus_lost
reloading plugin Default.scroll
reloading plugin Default.set_unsaved_view_name
reloading plugin Default.settings
reloading plugin Default.show_scope_name
reloading plugin Default.side_bar
reloading plugin Default.sort
reloading plugin Default.switch_file
reloading plugin Default.symbol
reloading plugin Default.transform
reloading plugin Default.transpose
reloading plugin Default.ui
reloading plugin CSS.css_completions
reloading plugin Diff.diff
reloading plugin HTML.encode_html_entities
reloading plugin HTML.html_completions
reloading plugin GitSavvy.__init__
reloading plugin GitSavvy.git_savvy
reloading plugin Programmatic Key Bindings.binding_command
reloading plugin Scheme.completion
reloading plugin Scheme.pretty_format
reloading plugin Slyblime.apropos
Preparing stuff for SLY
reloading plugin Slyblime.compile
reloading plugin Slyblime.completion
reloading plugin Slyblime.custom_elements
reloading plugin Slyblime.debugger
reloading plugin Slyblime.inspector
reloading plugin Slyblime.output_commands
reloading plugin Slyblime.repl
reloading plugin Slyblime.session_management
reloading plugin Slyblime.sexpdata
reloading plugin Slyblime.sly
reloading plugin Slyblime.tracer
reloading plugin Slyblime.ui_view
reloading plugin Slyblime.util
reloading plugin Slyblime.workarounds
reloading plugin Terminal.Terminal
reloading python 3.3 plugin BracketHighlighter.bh_logging
reloading python 3.3 plugin BracketHighlighter.bh_plugin
reloading python 3.3 plugin BracketHighlighter.bh_popup
reloading python 3.3 plugin BracketHighlighter.bh_regions
reloading python 3.3 plugin BracketHighlighter.bh_remove
reloading python 3.3 plugin BracketHighlighter.bh_rules
reloading python 3.3 plugin BracketHighlighter.bh_search
reloading python 3.3 plugin BracketHighlighter.bh_swapping
reloading python 3.3 plugin BracketHighlighter.bh_wrapping
reloading python 3.3 plugin BracketHighlighter.support
reloading python 3.3 plugin GoTools.gotools_build
reloading python 3.3 plugin GoTools.gotools_format
reloading python 3.3 plugin GoTools.gotools_goto_def
reloading python 3.3 plugin GoTools.gotools_oracle
reloading python 3.3 plugin GoTools.gotools_rename
reloading python 3.3 plugin GoTools.gotools_settings
reloading python 3.3 plugin GoTools.gotools_suggestions
reloading python 3.3 plugin GoTools.gotools_util
reloading python 3.3 plugin HexViewer.hex_checksum
reloading python 3.3 plugin HexViewer.hex_common
reloading python 3.3 plugin HexViewer.hex_editor
reloading python 3.3 plugin HexViewer.hex_finder
reloading python 3.3 plugin HexViewer.hex_highlighter
reloading python 3.3 plugin HexViewer.hex_inspector
reloading python 3.3 plugin HexViewer.hex_notify
reloading python 3.3 plugin HexViewer.hex_viewer
reloading python 3.3 plugin HexViewer.hex_writer
reloading python 3.3 plugin HexViewer.sum_hashes
reloading python 3.3 plugin HexViewer.support
reloading python 3.3 plugin HexViewer.tiger
reloading python 3.3 plugin HexViewer.whirlpool
reloading python 3.3 plugin Julia.unicode
reloading python 3.3 plugin Markdown Table Formatter.markdown_table_formatter
reloading python 3.3 plugin MarkdownPreview.browser
reloading python 3.3 plugin MarkdownPreview.markdown_preview
reloading python 3.3 plugin MarkdownPreview.markdown_settings
reloading python 3.3 plugin MarkdownPreview.markdown_wrapper
reloading python 3.3 plugin NimPlus.docdisplay
reloading python 3.3 plugin NimPlus.NimPlus
reloading python 3.3 plugin NimPlus.nimsuggest
reloading python 3.3 plugin Package Control.1_reloader
reloading python 3.3 plugin Package Control.2_bootstrap
reloading python 3.3 plugin Package Control.Package Control
reloading python 3.3 plugin PackageResourceViewer.package_resource_viewer
reloading python 3.3 plugin PackageResourceViewer.package_resources
reloading python 3.3 plugin SendText.SendText
reloading python 3.3 plugin SideBarEnhancements.SideBar
reloading python 3.3 plugin SideBarEnhancements.SideBarAPI
reloading python 3.3 plugin SideBarEnhancements.SideBarDefaultDisable
reloading python 3.3 plugin SublimeREPL.__init__
reloading python 3.3 plugin SublimeREPL.completions
reloading python 3.3 plugin SublimeREPL.lang_integration
reloading python 3.3 plugin SublimeREPL.run_existing_command
reloading python 3.3 plugin SublimeREPL.sublimerepl
reloading python 3.3 plugin SublimeREPL.sublimerepl_build_system_hack
reloading python 3.3 plugin SublimeREPL.text_transfer
plugins loaded
Package Control: Skipping automatic upgrade, last run at 2023-08-11 12:22:44, next run at 2023-08-11 13:22:44 or after
Traceback (most recent call last):
  File "/Users/lewis/Library/Application Support/Sublime Text 3/Packages/SublimeREPL/sublimerepl.py", line 495, in open
    rv = ReplView(view, r, syntax, repl_restart_args)
  File "/Users/lewis/Library/Application Support/Sublime Text 3/Packages/SublimeREPL/sublimerepl.py", line 186, in __init__
    self._history = PersistentHistory(self.external_id)
  File "/Users/lewis/Library/Application Support/Sublime Text 3/Packages/SublimeREPL/sublimerepl.py", line 140, in __init__
    self._db.create("external_id", "command", "ts", mode="open")
  File "/Users/lewis/Library/Application Support/Sublime Text 3/Packages/SublimeREPL/repllibs/PyDbLite.py", line 193, in create
    return self.open()
  File "/Users/lewis/Library/Application Support/Sublime Text 3/Packages/SublimeREPL/repllibs/PyDbLite.py", line 246, in open
    self.fields = pickle.load(_in)
ValueError: unsupported pickle protocol: 5
error: ValueError('unsupported pickle protocol: 5',)
error: Error loading syntax file "/Users/lewis/LibraryPackages/Scheme/syntax/Scheme.sublime-syntax": Unable to read /Users/lewis/LibraryPackages/Scheme/syntax/Scheme.sublime-syntax
0 Likes

#16

I fixed the Python 3.8 problem. Slyblime, which also uses sublimerepl, contains a command to update Sublimerepl to use Python 3.8. sbcl also works again including eval’ing source text.

I have compared the two settings and I cannot for the life of me figure out the key difference.

0 Likes

#17

I got it working again. The external id for the scheme “child” must be “scheme” because that is the syntax of the source file.

I had a slash missing in a path entry, but that doesn’t fix that can’t load the syntax file problem. This affects syntax highlighting in the repl itself, not the source file in the editor.

Now I fixed finding the syntax file for use by the repl:

"syntax": "Packages/Scheme/syntax/Scheme.sublime-syntax"``

This requires expanding the package archive and moving it to Packages.

Everything works and no dialogs with error messages at all.

Really not fun. You can mark this one closed, but I stand by my recommendation that "important" (for some value of important) packages should be curated by HQ for the health of Sublime Text.
0 Likes

#18

No, it doesn’t; sublime-packge files that are in Installed Packages behave exactly the same as similarly named folders full of files in the Packages folder. All extracting the files out does is makes sure that the package contents are forever locked and can never be updated to include new features (which is, generally speaking, Bad :tm:)

0 Likes

#19

OK. So, how do I reach the contents of that package at <Scheme.sublime-package>/syntax/Scheme.sublime-syntax by referencing the compressed archive? Also, it’s possible that the code in the package sublimerepl can’t follow such a path and wants a file path–though I don’t know either way.

Here is the directory of the package after expansion:

Scheme
├── Comments.tmPreferences
├── LICENSE
├── Main.sublime-menu
├── README.md
├── Scheme.sublime-build
├── Snippets
│   ├── '(.sublime-snippet
│   ├── apply.sublime-snippet
│   ├── begin.sublime-snippet
│   ├── bytevector-fill!.sublime-snippet
│   ├── bytevector-u8-ref.sublime-snippet
│   ├── bytevector-u8-set!.sublime-snippet
│   ├── car.sublime-snippet
│   ├── cdr.sublime-snippet
│   ├── cond.sublime-snippet
│   ├── cons.sublime-snippet
│   ├── define-syntax.sublime-snippet
│   ├── define.sublime-snippet
│   ├── if.sublime-snippet
│   ├── lambda.sublime-snippet
│   ├── let loop.sublime-snippet
│   ├── let.sublime-snippet
│   ├── let1.sublime-snippet
│   ├── make-bytevector.sublime-snippet
│   ├── make-vector.sublime-snippet
│   ├── map.sublime-snippet
│   ├── printf.sublime-snippet
│   ├── set!.sublime-snippet
│   ├── set-car!.sublime-snippet
│   ├── set-cdr!.sublime-snippet
│   ├── vector-fill!.sublime-snippet
│   ├── vector-ref.sublime-snippet
│   └── vector-set!.sublime-snippet
├── completion.py
├── images
│   ├── 2.png
│   ├── expression-comment.png
│   ├── formatted.png
│   ├── original.png
│   └── quasiquote.png
├── keymap
│   ├── Default (Linux).sublime-keymap
│   ├── Default (OSX).sublime-keymap
│   ├── Default (Windows).sublime-keymap
│   └── Default.sublime-keymap
├── package-metadata.json
├── pretty
│   ├── minimize.py
│   ├── pretty.py
│   ├── pretty.ss
│   ├── read.py
│   ├── read.ss
│   └── test.py
├── pretty_format.py
└── syntax
    ├── Scheme.sublime-syntax
    ├── regexp.py
    ├── regexp.ss
    └── syntax_test_Scheme.ss

I asked many times nicely before the lack of clear response became frustrating. You are pretty quick to challenge an incorrect statement about Sublime Text, which is fair, but not very quick to actually help.

We are paying customers.

0 Likes

#20

Sublime Text loads all packed (*.sublime-package) and extracted packages into a virtual filesystem. Files in an extracted package override those from a packed one.

So regardless the source (packed or unpacked), are accessed via relative paths such as Packages/<Package Name>/<File>. This is also what the existing "syntax": " ... " arguments of the repl_open command use.

So the only required change should be to replace the related entries in Packages/SublimeREPL/config/Schem/Main.sublime-menu with one of the following (where I’d expect both to work, as ST does not need the path for syntax assignments):

"syntax": "Scheme.sublime-syntax"`

or

"syntax": "Packages/Scheme/syntax/Scheme.sublime-syntax"`

Unfortunatelly sending text fails with WinError 6 regardless which syntax I try. I checked Python, PHP, Perl, … . Not sure what its missing so far.

0 Likes