Vue normale

GitHub - chifflier/mind-your-languages: Languages and security

23 novembre 2025 à 05:28

This collection of examples discussing the question of the intrinsic security characteristics of programming languages. Through illustrations and discussions, it advocates for a different vision of well-known mechanisms and is intended to provide some food for thoughts regarding languages and development tools, as well as recommendations regarding the education of developers or evaluators for secure software.


Permalink

How to delete tags in bulk? - Zotero Forums

18 septembre 2025 à 09:47

Script à ajouter dans l'extension Actions & Tags de Zotero permettant de supprimer les marqueurs tout en conservant certains d'entre eux

Astuce : en commentant les 2 lignes qui affichent une fenêtre pendant la suppression, cela évite de devoir cliquer des centaines, voire des milliers de fois sur OK.

// Delete tags, based on Replace tags
// This script removes all tags from the specified Zotero items, except those in the ignore list.
// add tags you wish to keep to `ignoreTags` list, the list is prefilled with two examples

(async () => {

const ignoreTags = ['#GoldSet', '#ClinicalTrials.gov', '#Cochrane Central', '#Embase', '#Medline', '#Proquest', '#Web of Science', '#WHO ICTRP'];

// ^^^^^ Add tag names here to ignore. ^^^^^^^

// Initialize `targetItems` to the array of `items`, or if `items` is undefined,
// use the single `item` wrapped in an array. If neither exists, default to an empty array.
let targetItems = items || (item ? [item] : []);

// Show an alert message
// await Zotero.alert(null, "Delete all tags except ignored ones");

// Iterate over each item in the `targetItems` array.
for (const currentItem of targetItems) {

// Retrieve all tags associated with the current item.
// Use `.getTags()` to get tag objects, and map to their `tag` property to get tag names.
const tags = currentItem.getTags().map(tag => tag.tag);

// Iterate over each tag in the list of tag names.
for (const tag of tags) {

// Check if the tag is in the ignore list.
if (ignoreTags.includes(tag)) {

// Alert the user that the tag is being skipped.
// await Zotero.alert(null, `Tag "${tag}" is in the ignore list and will not be deleted.`);
continue;
}

// Remove the tag from the current item using `.removeTag()`.
await currentItem.removeTag(tag);
}
}

// The script finishes here.
})(); 

Permalien
❌