Silberwelten Forum

Normale Version: LSL und OSSL Unterstützung für Notepad++
Sie sehen gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Notepad++ als Scripteditor für LSL und OSSL Scripte aufrüsten


Die folgende Datei erweitert Notepad++ damit es die Scriptsprache LSL und OSSL unterstützt.

Das Projekt ist nicht neu, und auch nicht initial von mir, aber ich habe es 2016 schon mal erweitert,und nun auf den aktuellen Stand 09.2021 gebracht.
Dabei bin ich verwundert welche Entwicklung SL und Opensim gemacht haben.
Sl war ja jahrelang nur auf "Noterhalt" weiterentwickelt worden, aber seit dem "Ende" von Sansar geht es beachtlich voran. Der Sprachumfang von 2016 ist nun um ca 30% erweitert. Aber auch in Opensim hat sich einiges getan, hier sehe ich eine Verdopplung des OSSL Befehlsumfanes von 2016.
Leider gibt es immer noch keinen gemeinsam unterstützten OSSL Standard aller Grids.

Zum Projekt:

Bekannte LSL und OSSL Befehle, Konstanten, Operatoren, und Eventmarker werden farblich dargestellt.
Dies ist besonders hilfreich um Vertipper bei Befehlen schnell zu erkennen.

Ebenso hilfreich ist die farbliche Anzeige zusammengehöriger Klammerpaare. So werden Verschachtelungs Fehler schnell erkennbar.

Notepad++ läßt sich in Firestorm als Standard Script Editor einrichten damit dieser dann mit einem Klick das Script aus Firestorm heraus in Notepad++ öffnet.

VORBEREITUNG:

Zunächst laden wir die aktuelle 64Bit Version von Notepad++ von der Original Projektseite herunter:

https://notepad-plus-plus.org

Diese installieren wir. 

Nun öffnen wir Notepad++ und legen einen neue Datei an.
In diese kopieren wir den untenstehenden Inhallt hinein, und speichern es als BrightOSSLX21.XML Datei ab.
Achtet darauf das dies auch tatsächlich als XML Datei abgespeichert wir, und nicht als ...xml.txt.

Wenn ihr die Datei nochmals in Notepad++ öffnet muss sie automatisch als XML Sprache farbig dargestellt werden.
Wenn ihr im Menü auf "Sprachen" geht ist einee Markierung vor XML sichtbar.



EINRICHTUNG:

Die nun erstellte BrightOSSLX21.XML Datei kopieren wir nun in den Notepad++ Ordner. 
(C:\Program Files\Notepad++    oder  C:\Programme\Notepad++)

Nun startet Notepad++ und geht unter "Sprachen" - "Benutzerdefinierte Sprachen" - "eigene Sprachen definieren".

[attachment=472]

hier geht ihr auf "Importieren".

Nun wählt ihr die "C:\Programme\Notepad++\BrightOSSLX21.XML" aus, und quittiert mit "Öffnen".  ( Das XML wird in Windows nicht angezeigt)

Es kommt einen erfolgs Meldung wenn alles geklappt hat. Das war es dann. 
Nun Notepad++ schliessen und neu öffnen.

Jetzt findet ihr unter Sprachen einen neuen Eintag  "BrightOSSLX21".

Wenn ihr eine .lsl Script datei ladet solte diese Sprache automatisch Anwendung finden.
Ansonsten wählt ihr hier die Ansicht aus.


Code:
<NotepadPlus>
    <UserLang name="BrightOSSLX21" ext="lsl" udlVersion="2.1">
        <Settings>
            <Global caseIgnored="no" allowFoldOfComments="no" foldCompact="no" forcePureLC="0" decimalSeparator="0" />
            <Prefix Keywords1="no" Keywords2="no" Keywords3="no" Keywords4="no" Keywords5="no" Keywords6="no" Keywords7="no" Keywords8="no" />
        </Settings>
        <KeywordLists>
            <Keywords name="Comments">03 03/* 04*/ 00// 01 02</Keywords>
            <Keywords name="Numbers, prefix1"></Keywords>
            <Keywords name="Numbers, prefix2"></Keywords>
            <Keywords name="Numbers, extras1"></Keywords>
            <Keywords name="Numbers, extras2"></Keywords>
            <Keywords name="Numbers, suffix1"></Keywords>
            <Keywords name="Numbers, suffix2"></Keywords>
            <Keywords name="Numbers, range"></Keywords>
            <Keywords name="Operators1">- ! &amp; ( ) , ; [ ] + &lt; = &gt;</Keywords>
            <Keywords name="Operators2"></Keywords>
            <Keywords name="Folders in code1, open">{</Keywords>
            <Keywords name="Folders in code1, middle"></Keywords>
            <Keywords name="Folders in code1, close">}</Keywords>
            <Keywords name="Folders in code2, open"></Keywords>
            <Keywords name="Folders in code2, middle"></Keywords>
            <Keywords name="Folders in code2, close"></Keywords>
            <Keywords name="Folders in comment, open"></Keywords>
            <Keywords name="Folders in comment, middle"></Keywords>
            <Keywords name="Folders in comment, close"></Keywords>
            <Keywords name="Keywords1">float integer key list quaternion rotation string vector</Keywords>
            <Keywords name="Keywords2">attach at_rot_target at_target changed collision collision_end collision_start control dataserver email event_order experience_permissions experience_permissions_denied http_request http_response land_collision land_collision_end land_collision_start link_message listen money moving_end moving_start not_at_rot_target not_at_target no_sensor object_rez on_rez path_update remote_data run_time_permissions sensor state_entry state_exit timer touch touch_end touch_start transaction_result</Keywords>            
            <Keywords name="Keywords3">llAbs llAcos llAddToLandBanList llAddToLandPassList llAdjustSoundVolume llAgentInExperience llAllowInventoryDrop llAngleBetween llApplyImpulse llApplyRotationalImpulse llAsin llAtan2 llAttachToAvatar llAttachToAvatarTemp llAvatarOnLinkSitTarget llAvatarOnSitTarget llAxes2Rot llAxisAngle2Rot llBase64ToInteger llBase64ToString llBreakAllLinks llBreakLink llCastRay llCeil llChar llClearCameraParams llClearLinkMedia llClearPrimMedia llCloseRemoteDataChannel llCollisionFilter llCollisionSound llCos llCreateCharacter llCreateKeyValue llCreateLink llCSV2List llDataSizeKeyValue llDeleteCharacter llDeleteKeyValue llDeleteSubList llDeleteSubString llDetachFromAvatar llDetectedGrab llDetectedGroup llDetectedKey llDetectedLinkNumber llDetectedName llDetectedOwner llDetectedPos llDetectedRot llDetectedTouchBinormal llDetectedTouchFace llDetectedTouchNormal llDetectedTouchPos llDetectedTouchST llDetectedTouchUV llDetectedType llDetectedVel llDialog llDie llDumpList2String llEdgeOfWorld llEjectFromLand llEmail llEscapeURL llEuler2Rot llEvade llExecCharacterCmd llFabs llFleeFrom llFloor llForceMouselook llFrand llGenerateKey llGetAccel llGetAgentInfo llGetAgentList llGetAgentSize llGetAlpha llGetAndResetTime llGetAnimation llGetAnimationList llGetBoundingBox    llGetCameraPos llGetCameraRot llGetCenterOfMass llGetClosestNavPoint llGetColor llGetCreator llGetDate llGetDayLength llGetDayOffset llGetDisplayName llGetEnergy llGetEnv llGetEnvironment llGetExperienceDetails llGetExperienceErrorMessage llGetForce llGetFreeMemory llGetFreeURLs llGetGeometricCenter llGetGMTclock llGetHTTPHeader llGetInventoryAcquireTime llGetInventoryCreator llGetInventoryKey llGetInventoryName llGetInventoryNumber llGetInventoryPermMask llGetInventoryType llGetKey llGetLandOwnerAt llGetLinkKey llGetLinkMedia llGetLinkName llGetLinkNumber llGetLinkNumberOfSides llGetLinkPrimitiveParams llGetListEntryType llGetListLength llGetLocalPos llGetLocalRot llGetMass llGetMassMKS llGetMaxScaleFactor llGetMemoryLimit llGetMinScaleFactor llGetMoonDirection llGetMoonRotation llGetNextEmail llGetNotecardLine llGetNumberOfNotecardLines llGetNumberOfPrims llGetNumberOfSides llGetObjectAnimationNames llGetObjectDesc llGetObjectDetails    llGetObjectMass llGetObjectName llGetObjectPermMask llGetObjectPrimCount llGetOmega llGetOwner llGetOwnerKey llGetParcelDetails llGetParcelFlags llGetParcelMaxPrims llGetParcelMusicURL llGetParcelPrimCount llGetParcelPrimOwners llGetPermissions llGetPermissionsKey llGetPhysicsMaterial llGetPos llGetPrimitiveParams llGetPrimMediaParams llGetRegionAgentCount llGetRegionCorner llGetRegionDayLength llGetRegionDayOffset llGetRegionFlags llGetRegionFPS llGetRegionMoonDirection llGetRegionMoonRotation llGetRegionName llGetRegionSunDirection llGetRegionSunRotation llGetRegionTimeDilation llGetRootPosition llGetRootRotation llGetRot llGetScale llGetScriptName llGetScriptState llGetSimStats    llGetSimulatorHostname llGetSPMaxMemory llGetStartParameter llGetStaticPath    llGetStatus llGetSubString llGetSunDirection llGetSunRotation llGetTexture llGetTextureOffset llGetTextureRot llGetTextureScale llGetTime llGetTimeOfDay llGetTimestamp llGetTorque llGetUnixTime llGetUsedMemory llGetUsername llGetVel llGetWallclock llGiveInventory llGiveInventoryList llGiveMoney llGround llGroundContour llGroundNormal llGroundRepel llGroundSlope llHash llHTTPRequest llHTTPResponse llInsertString llInstantMessage llIntegerToBase64 llJson2List llJsonGetValue llJsonSetValue llJsonValueType    llKey2Name llKeyCountKeyValue llKeysKeyValue llLinear2sRGB llLinkParticleSystem llLinkSitTarget llList2CSV llList2Float llList2Integer llList2Json llList2Key llList2List llList2ListStrided llList2Rot llList2String llList2Vector llListen llListenControl llListenRemove llListFindList llListInsertList llListRandomize llListReplaceList llListSort llListStatistics llLoadURL llLog llLog10 llLookAt llLoopSound llLoopSoundMaster llLoopSoundSlave llManageEstateAccess    llMapDestination llMD5String llMessageLinked llMinEventDelay llModifyLand llModPow llMoveToTarget llName2Key llNavigateTo llOffsetTexture llOpenRemoteDataChannel llOrd llOverMyLand llOwnerSay llParcelMediaCommandList llParcelMediaQuery llParseString2List llParseStringKeepNulls llParticleSystem llPassCollisions llPassTouches llPatrolPoints llPlaySound llPlaySoundSlave llPow llPreloadSound llPursue llPushObject llReadKeyValue llRegionSay llRegionSayTo llReleaseControls llReleaseURL llRemoteDataReply llRemoteLoadScriptPin llRemoveFromLandBanList llRemoveFromLandPassList llRemoveInventory llRemoveVehicleFlags llReplaceAgentEnvironment llRequestAgentData llRequestDisplayName llRequestExperiencePermissions llRequestInventoryData llRequestPermissions llRequestSecureURL llRequestSimulatorData llRequestURL llRequestUserKey llRequestUsername llResetAnimationOverride llResetLandBanList llResetLandPassList llResetOtherScript llResetScript llResetTime llReturnObjectsByID llReturnObjectsByOwner llRezAtRoot llRezObject llRot2Angle llRot2Axis llRot2Euler llRot2Fwd llRot2Left llRot2Up llRotateTexture llRotBetween llRotLookAt llRound llSameGroup llSay llScaleByFactor llScaleTexture llScriptDanger llScriptProfiler llSendRemoteData llSensor llSensorRemove llSensorRepeat llSetAgentEnvironment llSetAlpha llSetAngularVelocity llSetAnimationOverride llSetBuoyancy llSetCameraAtOffset llSetCameraEyeOffset llSetCameraParams llSetClickAction llSetColor llSetContentType llSetDamage llSetForce llSetForceAndTorque llSetHoverHeight llSetKeyframedMotion llSetLinkAlpha llSetLinkCamera llSetLinkColor llSetLinkMedia llSetLinkPrimitiveParams llSetLinkTexture llSetLinkTextureAnim llSetLocalRot llSetMemoryLimit llSetObjectDesc llSetObjectName llSetParcelMusicURL llSetPayPrice llSetPhysicsMaterial llSetPos llSetPrimitiveParams llSetPrimMediaParams llSetRegionPos llSetRemoteScriptAccessPin llSetRot llSetScale llSetScriptState llSetSitText llSetSoundQueueing llSetSoundRadius llSetStatus llSetText llSetTexture llSetTextureAnim llSetTimerEvent llSetTorque llSetTouchText llSetVehicleFlags llSetVehicleFloatParam llSetVehicleRotationParam llSetVehicleType llSetVehicleVectorParam llSetVelocity llSHA1String llShout llSin llSitOnLink llSitTarget llSleep llSqrt llsRGB2Linear llStartAnimation llStartObjectAnimation llStopAnimation llStopObjectAnimation llStopHover llStopLookAt llStopMoveToTarget llStopSound llStringLength llStringToBase64 llStringTrim llSubStringIndex llTakeControls llTan llTarget llTargetedEmail llTargetOmega llTargetRemove llTeleportAgent llTeleportAgentGlobalCoords llTeleportAgentHome llTextBox llToLower llToUpper llTransferLindenDollars llTriggerSound llTriggerSoundLimited llUnescapeURL llUnSit llUpdateCharacter llUpdateKeyValue    llVecDist llVecMag llVecNorm llVolumeDetect llWanderWithin llWater llWhisper llWind llXorBase64</Keywords>
            <Keywords name="Keywords4">osAddAgentToGroup osAgentSaveAppearance osAvatarName2Key osAvatarPlayAnimation osAvatarStopAnimation osAvatarType osCauseDamage osCauseHealing osDetectedCountry osDropAttachment osDropAttachmentAt osEjectFromGroup osForceAttachToAvatar osForceAttachToAvatarFromInventory osForceAttachToOtherAvatarFromInventory osForceDetachFromAvatar osForceDropAttachment osForceDropAttachmentAt osForceOtherSit osGetAgentIP osGetAgents osGetAgentCountry osGetAvatarHomeURI osGetAvatarList osGetGender osGetHealRate osGetHealth osGetNumberOfAttachments osGrantScriptPermissions osInviteToGroup osKickAvatar osOwnerSaveAppearance osRevokeScriptPermissions osSetHealRate osSetHealth osSetOwnerSpeed osSetSpeed osLocalTeleportAgent osTeleportAgent osTeleportOwner sReplaceAgentEnvironment osIsNpc osNpcCreate osGetNpcList osNpcGetPos osNpcGetRot osNpcGetOwner osNpcLookAt osNpcLoadAppearance osNpcMoveTo osNpcMoveToTarget osNpcPlayAnimation osNpcRemove osNpcSaveAppearance osNpcSay osNpcSayTo osNpcSetProfileAbout osNpcSetProfileImage osNpcSetRot osNpcShout osNpcSit osNpcStand osNpcStopMoveToTarget osNpcStopAnimation osNpcTouch osNpcWhisper osClearInertia osClearObjectAnimations osDie osForceBreakAllLinks osForceBreakLink osForceCreateLink osGetInertiaData osGetInventoryItemKey osGetInventoryName osGetInventoryDesc osGetInventoryLastOwner osGetLastChangedEventKey osGetLinkNumber osGetLinkPrimitiveParams osGetPrimitiveParams osGetRezzingObject osGetSitActiveRange osGetLinkSitActiveRange osGetStandTarget osGetLinkStandTarget osLinkParticleSystem osMessageAttachments osMessageObject osParticleSystem osSetInertia osSetInertiaAsBox osSetInertiaAsCylinder osSetInertiaAsSphere osSetPrimitiveParams osSetProjectionParams osSetSitActiveRange osSetLinkSitActiveRange osSetStandTarget osSetLinkStandTarget osTeleportObject osVolumeDetect osDrawEllipse osDrawFilledEllipse osDrawFilledPolygon osDrawFilledRectangle osDrawImage osDrawLine osDrawPolygon osDrawRectangle osDrawResetTransform osDrawRotationTransform osDrawScaleTransform osDrawText osDrawTranslationTransform osGetDrawStringSize osMovePen osSetFontName osSetFontSize osSetPenCap osSetPenColor osSetPenSize osSetDynamicTextureData osSetDynamicTextureDataFace osSetDynamicTextureDataBlend osSetDynamicTextureDataBlendFace osSetDynamicTextureURL osSetDynamicTextureURLBlend osSetDynamicTextureURLBlendFace osGetNotecard osGetNotecardLine osGetNumberOfNotecardLines osMakeNotecard osAdjustSoundVolume osCollisionSound osLoopSound osLoopSoundMaster osLoopSoundSlave osPlaySound osPlaySoundSlave osPreloadSound osSetSoundRadius osStopSound osTriggerSound osTriggerSoundLimited osRequestSecureURL osRequestURL osSetContentType osParcelJoin osParcelSubdivide osGetParcelDwell osSetParcelDetails osGetTerrainHeight osSetTerrainHeight osSetTerrainTexture osSetTerrainTextureHeight osTerrainFlush osGetCurrentSunHour osGetApparentTime osGetApparentTimeString osGetApparentRegionTime osGetApparentRegionTimeString osGetWindParam osSetRegionWaterHeight osSetWindParam osWindActiveModelPluginName osReplaceParcelEnvironment osReplaceRegionEnvironment osResetEnvironment osCheckODE osGetGridCustom osGetGridGatekeeperURI osGetGridHomeURI osGetGridLoginURI osGetGridName osGetGridNick osGetMapTexture osGetPhysicsEngineName osGetPhysicsEngineType osGetRegionMapTexture osGetRegionSize osGetRegionStats osGetScriptEngineName osGetSimulatorMemory osGetSimulatorMemoryKB osGetSimulatorVersion osLoadedCreationDate osLoadedCreationID osLoadedCreationTime osConsoleCommand osRegionNotice osRegionRestart osSetParcelMediaURL osSetParcelMusicURL osSetParcelSIPAddress osResetAllScripts osFormatString osListenRegex osMatchString osRegexIsMatch osReplaceString osStringSubString osStringStartsWith osStringEndsWith osStringIndexOf osStringLastIndexOf osStringRemove osStringReplace osAngleBetween osApproxEquals osGetPSTWallclock osListSortInPlace osIsUUID osIsNotValidNumber osKey2Name osMax osMin osRound osSHA256 osSlerp osUnixTimeToTimestamp osVecDistSquare osVecMagSquare osGetSunParam osSetSunParam</Keywords>
            <Keywords name="Keywords5">ACTIVE AGENT AGENT_ALWAYS_RUN AGENT_ATTACHMENTS AGENT_AUTOPILOT AGENT_AWAY AGENT_BUSY AGENT_BY_LEGACY_NAME AGENT_BY_USERNAME AGENT_CROUCHING AGENT_FLYING AGENT_IN_AIR AGENT_LIST_PARCEL AGENT_LIST_PARCEL_OWNER AGENT_LIST_REGION AGENT_MOUSELOOK AGENT_ON_OBJECT AGENT_SCRIPTED AGENT_SITTING AGENT_TYPING AGENT_WALKING ALL_SIDES ANIM_ON ATTACH_AVATAR_CENTER ATTACH_BACK ATTACH_BELLY ATTACH_CHEST ATTACH_CHIN ATTACH_FACE_JAW ATTACH_FACE_LEAR ATTACH_FACE_LEYE ATTACH_FACE_REAR ATTACH_FACE_REYE ATTACH_FACE_TONGUE ATTACH_GROIN ATTACH_HEAD ATTACH_HIND_LFOOT ATTACH_HIND_RFOOT ATTACH_HUD_BOTTOM ATTACH_HUD_BOTTOM_LEFT ATTACH_HUD_BOTTOM_RIGHT ATTACH_HUD_CENTER_1 ATTACH_HUD_CENTER_2 ATTACH_HUD_TOP_CENTER ATTACH_HUD_TOP_LEFT ATTACH_HUD_TOP_RIGHT ATTACH_LEAR ATTACH_LEFT_PEC ATTACH_LEYE ATTACH_LFOOT ATTACH_LHAND ATTACH_LHAND_RING1 ATTACH_LHIP ATTACH_LLARM ATTACH_LLLEG ATTACH_LSHOULDER ATTACH_LUARM ATTACH_LULEG ATTACH_LWING ATTACH_MOUTH ATTACH_NECK ATTACH_NOSE ATTACH_PELVIS ATTACH_REAR ATTACH_REYE ATTACH_RFOOT ATTACH_RHAND ATTACH_RHAND_RING1 ATTACH_RHIP ATTACH_RIGHT_PEC ATTACH_RLARM ATTACH_RLLEG ATTACH_RSHOULDER ATTACH_RUARM ATTACH_RULEG ATTACH_RWING ATTACH_TAIL_BASE ATTACH_TAIL_TIP CAMERA_ACTIVE CAMERA_BEHINDNESS_ANGLE CAMERA_BEHINDNESS_LAG CAMERA_DISTANCE CAMERA_FOCUS CAMERA_FOCUS_LAG CAMERA_FOCUS_LOCKED CAMERA_FOCUS_OFFSET CAMERA_FOCUS_THRESHOLD CAMERA_PITCH CAMERA_POSITION CAMERA_POSITION_LAG CAMERA_POSITION_LOCKED CAMERA_POSITION_THRESHOLD CHANGED_ALLOWED_DROP CHANGED_COLOR CHANGED_INVENTORY CHANGED_LINK CHANGED_MEDIA CHANGED_OWNER CHANGED_REGION CHANGED_REGION_START CHANGED_SCALE CHANGED_SHAPE CHANGED_TELEPORT CHANGED_TEXTURE CHARACTER_ACCOUNT_FOR_SKIPPED_FRAMES CHARACTER_AVOIDANCE_MODE CHARACTER_DESIRED_SPEED CHARACTER_DESIRED_TURN_SPEED CHARACTER_LENGTH CHARACTER_MAX_ACCEL CHARACTER_MAX_DECEL CHARACTER_MAX_SPEED CHARACTER_MAX_TURN_RADIUS CHARACTER_ORIENTATION CHARACTER_RADIUS CHARACTER_STAY_WITHIN_PARCEL CHARACTER_TYPE CHARACTER_TYPE_A CHARACTER_TYPE_B CHARACTER_TYPE_C CHARACTER_TYPE_D CHARACTER_TYPE_NONE CLICK_ACTION_BUY CLICK_ACTION_NONE CLICK_ACTION_OPEN CLICK_ACTION_OPEN_MEDIA CLICK_ACTION_PAY CLICK_ACTION_PLAY CLICK_ACTION_SIT CLICK_ACTION_TOUCH CLICK_ACTION_ZOOM CONTENT_TYPE_ATOM CONTENT_TYPE_FORM CONTENT_TYPE_HTML CONTENT_TYPE_JSON CONTENT_TYPE_LLSD CONTENT_TYPE_RSS CONTENT_TYPE_TEXT CONTENT_TYPE_XHTML CONTENT_TYPE_XML CONTROL_BACK CONTROL_DOWN CONTROL_FWD CONTROL_LBUTTON CONTROL_LEFT CONTROL_ML_LBUTTON CONTROL_RIGHT CONTROL_ROT_LEFT CONTROL_ROT_RIGHT CONTROL_UP DATA_BORN DATA_NAME DATA_ONLINE DATA_PAYINFO DATA_RATING DATA_SIM_POS DATA_SIM_RATING DATA_SIM_STATUS DEBUG_CHANNEL DEG_TO_RAD EOF ERR_GENERIC ERR_MALFORMED_PARAMS ERR_PARCEL_PERMISSIONS ERR_RUNTIME_PERMISSIONS ERR_THROTTLED ESTATE_ACCESS_ALLOWED_AGENT_ADD ESTATE_ACCESS_ALLOWED_AGENT_REMOVE ESTATE_ACCESS_ALLOWED_GROUP_ADD ESTATE_ACCESS_ALLOWED_GROUP_REMOVE ESTATE_ACCESS_BANNED_AGENT_ADD ESTATE_ACCESS_BANNED_AGENT_REMOVE FALSE FORCE_DIRECT_PATH HORIZONTAL HTTP_ACCEPT HTTP_BODY_MAXLENGTH HTTP_BODY_TRUNCATED HTTP_CUSTOM_HEADER HTTP_METHOD HTTP_MIMETYPE HTTP_PRAGMA_NO_CACHE HTTP_USER_AGENT HTTP_VERBOSE_THROTTLE HTTP_VERIFY_CERT INVENTORY_ALL INVENTORY_ANIMATION INVENTORY_BODYPART INVENTORY_CLOTHING INVENTORY_GESTURE INVENTORY_LANDMARK INVENTORY_NONE INVENTORY_NOTECARD INVENTORY_OBJECT INVENTORY_SCRIPT INVENTORY_SETTING INVENTORY_SOUND INVENTORY_TEXTURE JSON_APPEND JSON_ARRAY JSON_DELETE JSON_FALSE JSON_INVALID JSON_NULL JSON_NUMBER JSON_OBJECT JSON_STRING JSON_TRUE KFM_CMD_PAUSE KFM_CMD_PLAY KFM_CMD_STOP KFM_COMMAND KFM_DATA KFM_FORWARD KFM_LOOP KFM_MODE KFM_PING_PONG KFM_REVERSE KFM_ROTATION KFM_TRANSLATION LAND_LEVEL LAND_LOWER LAND_NOISE LAND_RAISE LAND_REVERT LAND_SMOOTH LINK_ALL_CHILDREN LINK_ALL_OTHERS LINK_ROOT LINK_SET LINK_THIS LIST_STAT_GEOMETRIC_MEAN LIST_STAT_MAX LIST_STAT_MEAN LIST_STAT_MEDIAN LIST_STAT_MIN LIST_STAT_NUM_COUNT LIST_STAT_RANGE LIST_STAT_STD_DEV LIST_STAT_SUM LIST_STAT_SUM_SQUARES LOOP MASK_BASE MASK_EVERYONE MASK_GROUP MASK_NEXT MASK_OWNER NULL_KEY OBJECT_ATTACHED_POINT OBJECT_ATTACHED_SLOTS_AVAILABLE OBJECT_BODY_SHAPE_TYPE OBJECT_CHARACTER_TIME OBJECT_CLICK_ACTION OBJECT_CREATOR OBJECT_DESC OBJECT_GROUP OBJECT_HOVER_HEIGHT OBJECT_LAST_OWNER_ID OBJECT_NAME OBJECT_OMEGA OBJECT_OWNER OBJECT_PATHFINDING_TYPE OBJECT_PHANTOM OBJECT_PHYSICS OBJECT_PHYSICS_COST OBJECT_POS OBJECT_PRIM_COUNT OBJECT_PRIM_EQUIVALENCE OBJECT_RENDER_WEIGHT OBJECT_RETURN_PARCEL OBJECT_RETURN_PARCEL_OWNER OBJECT_RETURN_REGION OBJECT_ROOT OBJECT_ROT OBJECT_RUNNING_SCRIPT_COUNT OBJECT_SCRIPT_MEMORY OBJECT_SCRIPT_TIME OBJECT_SELECT_COUNT OBJECT_SERVER_COST OBJECT_STREAMING_COST OBJECT_TEMP_ON_REZ OBJECT_TOTAL_INVENTORY_COUNT    OBJECT_TOTAL_SCRIPT_COUNT OBJECT_UNKNOWN_DETAIL OBJECT_VELOCITY    OPT_CHARACTER OPT_AVATAR OPT_EXCLUSION_VOLUME OPT_LEGACY_LINKSET OPT_MATERIAL_VOLUME OPT_OTHER OPT_STATIC_OBSTACLE OPT_WALKABLE    PARCEL_COUNT_GROUP PARCEL_COUNT_OTHER PARCEL_COUNT_OWNER PARCEL_COUNT_SELECTED PARCEL_COUNT_TEMP PARCEL_COUNT_TOTAL PARCEL_DETAILS_AREA PARCEL_DETAILS_DESC PARCEL_DETAILS_GROUP PARCEL_DETAILS_ID PARCEL_DETAILS_NAME PARCEL_DETAILS_OWNER PARCEL_DETAILS_SEE_AVATARS PARCEL_FLAG_ALLOW_ALL_OBJECT_ENTRY PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS PARCEL_FLAG_ALLOW_CREATE_OBJECTS PARCEL_FLAG_ALLOW_DAMAGE PARCEL_FLAG_ALLOW_FLY PARCEL_FLAG_ALLOW_GROUP_OBJECT_ENTRY PARCEL_FLAG_ALLOW_GROUP_SCRIPTS PARCEL_FLAG_ALLOW_LANDMARK PARCEL_FLAG_ALLOW_SCRIPTS PARCEL_FLAG_ALLOW_TERRAFORM PARCEL_FLAG_LOCAL_SOUND_ONLY PARCEL_FLAG_RESTRICT_PUSHOBJECT PARCEL_FLAG_USE_ACCESS_GROUP PARCEL_FLAG_USE_ACCESS_LIST PARCEL_FLAG_USE_BAN_LIST PARCEL_FLAG_USE_LAND_PASS_LIST PARCEL_MEDIA_COMMAND_AGENT PARCEL_MEDIA_COMMAND_AUTO_ALIGN PARCEL_MEDIA_COMMAND_DESC PARCEL_MEDIA_COMMAND_LOOP PARCEL_MEDIA_COMMAND_LOOP_SET PARCEL_MEDIA_COMMAND_PAUSE PARCEL_MEDIA_COMMAND_PLAY PARCEL_MEDIA_COMMAND_SIZE PARCEL_MEDIA_COMMAND_STOP PARCEL_MEDIA_COMMAND_TEXTURE PARCEL_MEDIA_COMMAND_TIME PARCEL_MEDIA_COMMAND_TYPE PARCEL_MEDIA_COMMAND_UNLOAD PARCEL_MEDIA_COMMAND_URL PASSIVE PASS_ALWAYS PASS_IF_NOT_HANDLED PASS_NEVER PATROL_PAUSE_AT_WAYPOINTS    PAYMENT_INFO_ON_FILE PAYMENT_INFO_USED PAY_DEFAULT PAY_HIDE PERMISSION_ATTACH PERMISSION_CHANGE_LINKS PERMISSION_CONTROL_CAMERA PERMISSION_DEBIT PERMISSION_TAKE_CONTROLS PERMISSION_TELEPORT PERMISSION_TRACK_CAMERA PERMISSION_TRIGGER_ANIMATION PERM_ALL PERM_COPY PERM_MODIFY PERM_MOVE PERM_TRANSFER PI PING_PONG PI_BY_TWO PRIM_ALLOW_UNSIT PRIM_ALPHA_MODE PRIM_ALPHA_MODE_BLEND PRIM_ALPHA_MODE_EMISSIVE PRIM_ALPHA_MODE_MASK PRIM_ALPHA_MODE_NONE PRIM_BUMP_BARK PRIM_BUMP_BLOBS PRIM_BUMP_BRICKS PRIM_BUMP_BRIGHT PRIM_BUMP_CHECKER PRIM_BUMP_CONCRETE PRIM_BUMP_DARK PRIM_BUMP_DISKS PRIM_BUMP_GRAVEL PRIM_BUMP_LARGETILE PRIM_BUMP_NONE PRIM_BUMP_SHINY PRIM_BUMP_SIDING PRIM_BUMP_STONE PRIM_BUMP_STUCCO PRIM_BUMP_SUCTION PRIM_BUMP_TILE PRIM_BUMP_WEAVE PRIM_BUMP_WOOD PRIM_COLOR PRIM_DESC PRIM_FLEXIBLE PRIM_FULLBRIGHT PRIM_GLOW PRIM_HOLE_CIRCLE PRIM_HOLE_DEFAULT PRIM_HOLE_SQUARE PRIM_HOLE_TRIANGLE PRIM_LINK_TARGET PRIM_MATERIAL PRIM_MATERIAL_FLESH PRIM_MATERIAL_GLASS PRIM_MATERIAL_LIGHT PRIM_MATERIAL_METAL PRIM_MATERIAL_PLASTIC PRIM_MATERIAL_RUBBER PRIM_MATERIAL_STONE PRIM_MATERIAL_WOOD PRIM_MEDIA_ALT_IMAGE_ENABLE PRIM_MEDIA_AUTO_LOOP PRIM_MEDIA_AUTO_PLAY PRIM_MEDIA_AUTO_SCALE PRIM_MEDIA_AUTO_ZOOM PRIM_MEDIA_CURRENT_URL PRIM_MEDIA_FIRST_CLICK_INTERACT PRIM_MEDIA_HEIGHT_PIXELS PRIM_MEDIA_HOME_URL PRIM_MEDIA_PERMS_CONTROL PRIM_MEDIA_PERMS_INTERACT PRIM_MEDIA_PERM_ANYONE PRIM_MEDIA_PERM_GROUP    PRIM_MEDIA_PERM_NONE PRIM_MEDIA_PERM_OWNER PRIM_MEDIA_WHITELIST PRIM_MEDIA_WHITELIST_ENABLE PRIM_MEDIA_WIDTH_PIXELS PRIM_NAME PRIM_NORMAL PRIM_OMEGA PRIM_PHANTOM PRIM_PHYSICS PRIM_PHYSICS_SHAPE_CONVEX PRIM_PHYSICS_SHAPE_NONE PRIM_PHYSICS_SHAPE_PRIM PRIM_PHYSICS_SHAPE_TYPE PRIM_POINT_LIGHT PRIM_POSITION PRIM_POS_LOCAL PRIM_ROTATION PRIM_ROT_LOCAL PRIM_SCRIPTED_SIT_ONLY PRIM_SCULPT_FLAG_INVERT PRIM_SCULPT_FLAG_MIRROR PRIM_SCULPT_TYPE_CYLINDER PRIM_SCULPT_TYPE_MASK PRIM_SCULPT_TYPE_PLANE PRIM_SCULPT_TYPE_SPHERE PRIM_SCULPT_TYPE_TORUS PRIM_SHINY_HIGH PRIM_SHINY_LOW PRIM_SHINY_MEDIUM PRIM_SHINY_NONE PRIM_SIZE PRIM_SPECULAR PRIM_TEMP_ON_REZ PRIM_TEXGEN PRIM_TEXGEN_DEFAULT PRIM_TEXGEN_PLANAR PRIM_TEXT PRIM_TEXTURE PRIM_TYPE PRIM_TYPE_BOX PRIM_TYPE_CYLINDER PRIM_TYPE_PRISM PRIM_TYPE_RING PRIM_TYPE_SCULPT PRIM_TYPE_SPHERE PRIM_TYPE_TORUS PRIM_TYPE_TUBE PROFILE_NONE PROFILE_SCRIPT_MEMORY PUBLIC_CHANNEL RAD_TO_DEG RCERR_CAST_TIME_EXCEEDED RCERR_SIM_PERF_LOW RCERR_UNKNOWN RC_DATA_FLAGS RC_DETECT_PHANTOM RC_GET_LINK_NUM RC_GET_NORMAL RC_GET_ROOT_KEY RC_MAX_HITS RC_REJECT_AGENTS RC_REJECT_LAND RC_REJECT_NONPHYSICAL RC_REJECT_PHYSICAL RC_REJECT_TYPES REGION_FLAG_ALLOW_DAMAGE REGION_FLAG_ALLOW_DIRECT_TELEPORT REGION_FLAG_BLOCK_FLY REGION_FLAG_BLOCK_TERRAFORM REGION_FLAG_DISABLE_COLLISIONS REGION_FLAG_DISABLE_PHYSICS REGION_FLAG_FIXED_SUN REGION_FLAG_RESTRICT_PUSHOBJECT REGION_FLAG_SANDBOX REMOTE_DATA_CHANNEL REMOTE_DATA_REPLY REMOTE_DATA_REQUEST REVERSE ROTATE SCALE SCRIPTED SIM_STAT_PCT_CHARS_STEPPED SMOOTH SQRT2 STATUS_BLOCK_GRAB STATUS_BLOCK_GRAB_OBJECT STATUS_BOUNDS_ERROR STATUS_CAST_SHADOWS STATUS_DIE_AT_EDGE STATUS_INTERNAL_ERROR STATUS_MALFORMED_PARAMS STATUS_NOT_FOUND STATUS_NOT_SUPPORTED STATUS_OK STATUS_PHANTOM STATUS_PHYSICS STATUS_RETURN_AT_EDGE STATUS_ROTATE_X STATUS_ROTATE_Y STATUS_ROTATE_Z STATUS_SANDBOX STATUS_TYPE_MISMATCH STATUS_WHITELIST_FAILED STRING_TRIM STRING_TRIM_HEAD STRING_TRIM_TAIL TARGETED_EMAIL_OBJECT_OWNER TEXTURE_DEFAULT TEXTURE_BLANK TEXTURE_MEDIA TEXTURE_PLYWOOD TEXTURE_TRANSPARENT TOUCH_INVALID_FACE TOUCH_INVALID_TEXCOORD TOUCH_INVALID_VECTOR TRAVERSAL_TYPE TRUE TWO_PI TYPE_FLOAT TYPE_INTEGER TYPE_INVALID TYPE_KEY TYPE_ROTATION TYPE_STRING TYPE_VECTOR URL_REQUEST_DENIED URL_REQUEST_GRANTED VEHICLE_FLAG_NO_FLY_UP    VEHICLE_ANGULAR_DEFLECTION_EFFICIENCY VEHICLE_ANGULAR_DEFLECTION_TIMESCALE VEHICLE_ANGULAR_FRICTION_TIMESCALE VEHICLE_ANGULAR_MOTOR_DECAY_TIMESCALE VEHICLE_ANGULAR_MOTOR_DIRECTION VEHICLE_ANGULAR_MOTOR_TIMESCALE VEHICLE_BANKING_EFFICIENCY VEHICLE_BANKING_MIX VEHICLE_BANKING_TIMESCALE VEHICLE_BUOYANCY VEHICLE_FLAG_CAMERA_DECOUPLED VEHICLE_FLAG_HOVER_GLOBAL_HEIGHT VEHICLE_FLAG_HOVER_TERRAIN_ONLY VEHICLE_FLAG_HOVER_UP_ONLY VEHICLE_FLAG_HOVER_WATER_ONLY VEHICLE_FLAG_LIMIT_MOTOR_UP VEHICLE_FLAG_LIMIT_ROLL_ONLY VEHICLE_FLAG_MOUSELOOK_BANK VEHICLE_FLAG_MOUSELOOK_STEER VEHICLE_FLAG_NO_DEFLECTION_UP VEHICLE_HOVER_EFFICIENCY VEHICLE_HOVER_HEIGHT    VEHICLE_HOVER_TIMESCALE VEHICLE_LINEAR_DEFLECTION_EFFICIENCY VEHICLE_LINEAR_DEFLECTION_TIMESCALE VEHICLE_LINEAR_FRICTION_TIMESCALE VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE VEHICLE_LINEAR_MOTOR_DIRECTION VEHICLE_LINEAR_MOTOR_OFFSET VEHICLE_LINEAR_MOTOR_TIMESCALE VEHICLE_REFERENCE_FRAME VEHICLE_TYPE_AIRPLANE VEHICLE_TYPE_BALLOON VEHICLE_TYPE_BOAT VEHICLE_TYPE_CAR VEHICLE_TYPE_NONE VEHICLE_TYPE_SLED VEHICLE_VERTICAL_ATTRACTION_EFFICIENCY VEHICLE_VERTICAL_ATTRACTION_TIMESCALE VERTICAL ZERO_ROTATION ZERO_VECTOR</Keywords>
            <Keywords name="Keywords6">AGENT_LIST_EXCLUDENPC CAMERA_FOCUS_OFFSET_X CAMERA_FOCUS_OFFSET_Y CAMERA_FOCUS_OFFSET_Z CAMERA_POSITION_X CAMERA_POSITION_Y CAMERA_POSITION_Z CAMERA_FOCUS_X CAMERA_FOCUS_Y CAMERA_FOCUS_Z CHANGED_ANIMATION DATA_SIM_RELEASE LIST_STAT_HARMONIC_MEAN LSL_STATUS_OK LSL_STATUS_MALFORMED_PARAMS LSL_STATUS_TYPE_MISMATCH LSL_STATUS_BOUNDS_ERROR LSL_STATUS_NOT_FOUND LSL_STATUS_NOT_SUPPORTED LSL_STATUS_INTERNAL_ERROR LSL_STATUS_WHITELIST_FAILED STATS_TIME_DILATION STATS_SIM_FPS STATS_PHYSICS_FPS STATS_AGENT_UPDATES STATS_ROOT_AGENTS STATS_CHILD_AGENTS STATS_TOTAL_PRIMS STATS_ACTIVE_PRIMS STATS_FRAME_MS STATS_NET_MS STATS_PHYSICS_MS STATS_IMAGE_MS STATS_OTHER_MS STATS_IN_PACKETS_PER_SECOND STATS_OUT_PACKETS_PER_SECOND STATS_UNACKED_BYTES STATS_AGENT_MS STATS_PENDING_DOWNLOADS STATS_PENDING_UPLOADS STATS_ACTIVE_SCRIPTS STATS_SIM_SLEEP STATS_SCRIPT_EPS STATS_SCRIPT_TIME STATS_SCRIPT_LPS STATS_SCRIPT_NPCS NPC OS_NPC_FLY OS_NPC_NO_FLY OS_NPC_LAND_AT_TARGET OS_NPC_RUNNING OS_NPC_SIT_NOW OS_NPC_CREATOR_OWNED OS_NPC_NOT_OWNED OS_NPC_SENSE_AS_AGENT OS_NPC_OBJECT_GROUP OSTPOBJ_NONE OSTPOBJ_STOPATTARGET    OSTPOBJ_STOPONFAIL OSTPOBJ_SETROT OS_LISTEN_REGEX_NAME OS_LISTEN_REGEX_MESSAGE OS_ATTACH_MSG_ALL OS_ATTACH_MSG_INVERT_POINTS OS_ATTACH_MSG_OBJECT_CREATOR OS_ATTACH_MSG_SCRIPT_CREATOR PARCEL_DETAILS_DWELL PARCEL_DETAILS_CLAIMDATE VEHICLE_RANGE_BLOCK VEHICLE_ROLL_FRAME VEHICLE_FLAG_NO_X VEHICLE_FLAG_NO_Y VEHICLE_FLAG_NO_Z VEHICLE_FLAG_LOCK_HOVER_HEIGHT VEHICLE_FLAG_NO_DEFLECTION VEHICLE_FLAG_LOCK_ROTATION WL_WATER_COLOR WL_WATER_FOG_DENSITY_EXPONENT WL_UNDERWATER_FOG_MODIFIER WL_REFLECTION_WAVELET_SCALE WL_FRESNEL_SCALE WL_FRESNEL_OFFSET WL_REFRACT_SCALE_ABOVE WL_REFRACT_SCALE_BELOW WL_BLUR_MULTIPLIER WL_BIG_WAVE_DIRECTION WL_LITTLE_WAVE_DIRECTION WL_NORMAL_MAP_TEXTURE WL_HORIZON WL_HAZE_HORIZON WL_BLUE_DENSITY WL_HAZE_DENSITY WL_DENSITY_MULTIPLIER WL_DISTANCE_MULTIPLIER WL_MAX_ALTITUDE WL_SUN_MOON_COLOR WL_AMBIENT WL_EAST_ANGLE WL_SUN_GLOW_FOCUS WL_SUN_GLOW_SIZE WL_SCENE_GAMMA WL_STAR_BRIGHTNESS WL_CLOUD_COLOR WL_CLOUD_XY_DENSITY WL_CLOUD_COVERAGE WL_CLOUD_SCALE WL_CLOUD_DETAIL_XY_DENSITY WL_CLOUD_SCROLL_X WL_CLOUD_SCROLL_Y WL_CLOUD_SCROLL_Y_LOCK WL_CLOUD_SCROLL_X_LOCK WL_DRAW_CLASSIC_CLOUDS WL_SUN_MOON_POSITION</Keywords>
            <Keywords name="Keywords7">default do else for if jump return state while</Keywords>
            <Keywords name="Keywords8">&#x000D;&#x000A;&#x000D;&#x000A;</Keywords>
            <Keywords name="Delimiters">00&quot; 01 02&quot; 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23</Keywords>
        </KeywordLists>
        <Styles>
            <WordsStyle name="DEFAULT" fgColor="800000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
            <WordsStyle name="COMMENTS" fgColor="000000" bgColor="EBEBEB" fontName="" fontStyle="0" nesting="0" />
            <WordsStyle name="LINE COMMENTS" fgColor="808080" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
            <WordsStyle name="NUMBERS" fgColor="FF8000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
            <WordsStyle name="KEYWORDS1" fgColor="8080FF" bgColor="FFFFFF" fontName="" fontStyle="2" nesting="0" />
            <WordsStyle name="KEYWORDS2" fgColor="008080" bgColor="FFFFFF" fontName="" fontStyle="1" nesting="0" />
            <WordsStyle name="KEYWORDS3" fgColor="000080" bgColor="FFFFFF" fontName="" fontStyle="3" nesting="0" />
            <WordsStyle name="KEYWORDS4" fgColor="000080" bgColor="FFFFFF" fontName="" fontStyle="3" nesting="0" />
            <WordsStyle name="KEYWORDS5" fgColor="800040" bgColor="FFFFFF" fontName="" fontStyle="1" nesting="0" />
            <WordsStyle name="KEYWORDS6" fgColor="800040" bgColor="FFFFFF" fontName="" fontStyle="1" nesting="0" />
            <WordsStyle name="KEYWORDS7" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="3" nesting="0" />
            <WordsStyle name="KEYWORDS8" fgColor="8000FF" bgColor="FFFFFF" fontName="" fontStyle="1" nesting="0" />
            <WordsStyle name="OPERATORS" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="1" nesting="0" />
            <WordsStyle name="FOLDER IN CODE1" fgColor="808040" bgColor="FFFFFF" fontName="" fontStyle="1" nesting="0" />
            <WordsStyle name="FOLDER IN CODE2" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
            <WordsStyle name="FOLDER IN COMMENT" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
            <WordsStyle name="DELIMITERS1" fgColor="FF8000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
            <WordsStyle name="DELIMITERS2" fgColor="FF8000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
            <WordsStyle name="DELIMITERS3" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
            <WordsStyle name="DELIMITERS4" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
            <WordsStyle name="DELIMITERS5" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
            <WordsStyle name="DELIMITERS6" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
            <WordsStyle name="DELIMITERS7" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
            <WordsStyle name="DELIMITERS8" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
        </Styles>
    </UserLang>
</NotepadPlus>


Und so schaut das nachher aus wenn ihr in Notepad++ lsl Scripte bearbeitet:

[attachment=473]

Wie Firestorm dazu gebracht wird Notepad++ automatisch zu öffnen muss ich nochmals dokumentieren, dann schreibe ich es hier.
Als ITler geht das im Unterbewusstsein, aber man hat Probleme es dann zu beschreiben.


Viel Spaß

Tron
Alles ist viel übersichtlicher und aufgeräumter. Das erleichtert die Arbeit erheblich. Notepad++ ist der beste Programmier-Editor den man haben kann und sollte! Ich setze das auf jeden Fall um. Open Source ist er dazu auch noch.
Ich nutze es auch seit viele Jahren. Daher habe ich mir auch die Mühe der Aktualisierung gemacht.
Leider ist Notepad++ nur für Windows erhältlich, das tatsächlich das einzige Programm das ich beim Umstieg von Windos7 auf Linux Mint (wegen dem LSL Plugin) schmerzlich vermisst habe. Aber ich werde es mal im Windows Emulator Wine Probieren.