Open ZIV-LY opened 2 months ago
Oh that is very weird! Could you provide the raw markdown for some code that doesn't fold please! (as many examples as you have would be great!)
Any code with ==
in it gets highlighted, as that is the Markdown code to highlight. I'm seeing the same problem with Rust code.
Example:
let logits = logits.squeeze(0).unwrap().squeeze(0).unwrap().to_dtype(DType::F32).unwrap();
let logits = if self.repeat_penalty == 1.0 {
logits
} else {
let start_at = tokens.len().saturating_sub(self.repeat_last_n);
candle_transformers::utils
::apply_repeat_penalty(&logits, self.repeat_penalty, &tokens[start_at..])
.unwrap()
};
This turns on highlighting until the next ==
is found. Collapsing the code block hides the problem.
I'm unable to replicate the highlighting. Can I ask whether you are aware of any settings or plugins that could affect this? Are you able to replicate it in a sandbox vault? Would appreciate any further info!
Also is this in reading mode, editing mode or both?
Sorry for the confusion. I find it is not just because of "===". The following is the test code. Please have a try:
const rehearse = true; // Set this to false to actually make changes
const moveToTop = false; // Set this to true to move to top instead of deleting. This can help make "extra" sortable.
var fieldName = "extra";
// Choose the patterns to remove by uncommenting the following lines
var remPattens = [];
remPattens.push(new RegExp("^Citations \\(.+\\):", "i")); // Citation pattern from zoterocitationcounts
remPattens.push(new RegExp("^\\d+ citations \\(.+\\)", "i")); // Citation pattern from zoterocitationcounts
remPattens.push(new RegExp("^ZSCC:.*$", "i")); // ZSCC: 000000
remPattens.push(new RegExp("^\\d+\\s*$", "i")); // 000000
// remPattens.push(new RegExp("^.+", "i")); // Uncomment this to completely wipe out the field
var fieldID = Zotero.ItemFields.getID(fieldName);
var s = new Zotero.Search();
s.libraryID = ZoteroPane.getSelectedLibraryID();
var ids = await s.search();
if (!ids.length) {
return "No items found";
}
msg += 'the "'+fieldName+'" field will change from: \n' + currentVal + '\n === TO ====> \n' + newValue;
update_counter = 0;
// ids = ids.slice(0, 100); // To try out only on the first 10 items
await Zotero.DB.executeTransaction(async function () {
for (let id of ids) {
let item = await Zotero.Items.getAsync(id);
let mappedFieldID = Zotero.ItemFields.getFieldIDFromTypeAndBase(item.itemTypeID, fieldName);
let thisFieldName = mappedFieldID ? mappedFieldID : fieldID;
let currentVal = item.getField(thisFieldName);
let lines = currentVal.split("\n");
for (let remPathern of remPattens){
let lines_match = lines.filter(ex => remPathern.test(ex));
let lines_nomatch = lines.filter(ex => !remPathern.test(ex));
if (moveToTop){
lines = lines_match.concat(lines_nomatch);
} else { // Delete
lines = lines_nomatch;
}
}
newValue = lines.join("\n");
if (currentVal!=newValue){
if (rehearse){
let title = item.getField('title');
let msg = 'This is just a rehearsal. If your run this, \nfor item with title "'+title+'",\n';
msg += 'the "'+fieldName+'" field will change from: \n' + currentVal + '\n === TO ====> \n' + newValue;
if (!confirm(msg)) return;
} else {
update_counter += 1;
item.setField(thisFieldName, newValue);
await item.save();
}
}
}
});
msg += 'the "'+fieldName+'" field will change from: \n' + currentVal + '\n === TO ====> \n' + newValue;
return update_counter + " of the total " + ids.length + " item(s) updated";
Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test Test test test
msg += 'the "'+fieldName+'" field will change from: \n' + currentVal + '\n === TO ====> \n' + newValue;
Thank you I will give this a try and let you know!
Describe the bug
Screenshots
Thank you for your help!