Skip to content

Commit

Permalink
DCS config: add CommandMenu keyboard bindings shared with the Cockpit…
Browse files Browse the repository at this point in the history
… Camera Move commands
  • Loading branch information
bwRavencl committed Jan 9, 2025
1 parent de01ff7 commit d4673df
Show file tree
Hide file tree
Showing 2 changed files with 84 additions and 17 deletions.
53 changes: 53 additions & 0 deletions configs/DCS/CommandMenu/Keyboard.diff.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
local diff = {
["keyDiffs"] = {
["d1886pnilunilcdnilvdnilvpnilvunil"] = {
["added"] = {
[1] = {
["key"] = "Num8",
["reformers"] = {
[1] = "RCtrl",
[2] = "RShift",
},
},
},
["name"] = "Command Menu Previous Item",
},
["d1887pnilunilcdnilvdnilvpnilvunil"] = {
["added"] = {
[1] = {
["key"] = "Num2",
["reformers"] = {
[1] = "RCtrl",
[2] = "RShift",
},
},
},
["name"] = "Command Menu Next Item",
},
["d1888pnilunilcdnilvdnilvpnilvunil"] = {
["added"] = {
[1] = {
["key"] = "Num6",
["reformers"] = {
[1] = "RCtrl",
[2] = "RShift",
},
},
},
["name"] = "Command Menu Select Item",
},
["d1889pnilunilcdnilvdnilvpnilvunil"] = {
["added"] = {
[1] = {
["key"] = "Num4",
["reformers"] = {
[1] = "RCtrl",
[2] = "RShift",
},
},
},
["name"] = "Command Menu Return",
},
},
}
return diff
48 changes: 31 additions & 17 deletions configs/DCS/Configure.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -47,32 +47,46 @@ function Get-DcsInstanceGuid {
$guidParts -join '-'
}


$configDir = "$dcsUserDir\Config"
$inputDir = "$configDir\Input"

$diffLuaFilename = 'vJoy Device.diff.lua'
$diffLuaFiles = Get-ChildItem -Path $PSScriptRoot -File -Depth 1 -Filter $diffLuaFilename

if ($diffLuaFiles.count -eq 0) {
Write-Output "Error: $diffLuaFilename files are missing"
Exit 1
}
function Copy-DiffLuaFiles {
param (
[Parameter(Mandatory = $true, Position = 0)]
[string]$SourceDiffLuaFilename,
[Parameter(Mandatory = $true, Position = 1)]
[string]$TargetDiffLuaFilename,
[Parameter(Mandatory = $true, Position = 2)]
[string]$DeviceCategory
)

foreach ($diffLuaFile in $diffLuaFiles) {
$destinationDir = "$inputDir\$($diffLuaFile.Directory.Name)\joystick"
$destinationFile = "$destinationDir\$($vJoyDevice.InstanceName) {$(Get-DcsInstanceGuid $vJoyDevice)}.diff.lua"
$diffLuaFiles = Get-ChildItem -Path $PSScriptRoot -File -Depth 1 -Filter $SourceDiffLuaFilename

try {
New-Item $destinationDir -ItemType 'directory' -Force | Out-Null
Copy-Item $diffLuaFile.FullName $destinationFile -errorAction stop
Write-Output "Copied '$($diffLuaFile.Directory.Name)' input config to: $destinationFile"
} catch {
Write-Output "Error: Could not copy '$($diffLuaFile.Directory.Name)' input config to: $destinationFile"
if ($diffLuaFiles.count -eq 0) {
Write-Output "Error: $SourceDiffLuaFilename file(s) are missing"
Exit 1
}

foreach ($diffLuaFile in $diffLuaFiles) {
$destinationDir = "$inputDir\$($diffLuaFile.Directory.Name)\$DeviceCategory"
$destinationFile = "$destinationDir\$TargetDiffLuaFilename"

try {
New-Item $destinationDir -ItemType 'directory' -Force | Out-Null
Copy-Item $diffLuaFile.FullName $destinationFile -errorAction stop
Write-Output "Copied '$($diffLuaFile.Directory.Name)' input config to: $destinationFile"
} catch {
Write-Output "Error: Could not copy '$($diffLuaFile.Directory.Name)' input config to: $destinationFile"
Exit 1
}
}

Write-Output ''
}

Write-Output ''
Copy-DiffLuaFiles 'vJoy Device.diff.lua' "$($vJoyDevice.InstanceName) {$(Get-DcsInstanceGuid $vJoyDevice)}.diff.lua" 'joystick'
Copy-DiffLuaFiles 'Keyboard.diff.lua' 'Keyboard.diff.lua' 'keyboard'

$disabledDevicesLuaFile = "$inputDir\disabled.lua"

Expand Down

0 comments on commit d4673df

Please sign in to comment.